JavaWeb - JavaScript基础
JavaScript
双标签:
注释:
//单行注释://注释内容
//多行注释:
/*注释
*这里写
*内容*/
输出内容:
//alert()弹窗输出:
alert("欢迎使用JavaScript");
//windos.alert("欢迎使用");
//document类.write()页面输出:
document.write("hello");
//log输出:console.log()
console.log("欢迎");
引用JavaScript:三种方式
//行内引用:
<a onclick="alert('这是内容')">点我</a>
//文件引用
<script type="text/javascript" src="路径/文件名.js"></script>
//内嵌引入
<script type="text/javascript">
//这里写内容
</script>
变量声明与定义
<script type="text/javascript">
//变量
//变量名只能包含字母、数字、下划线、$
//变量名只能以字母开头:驼峰命名(theFirstName)
//变量定义:
/*
* 赋值时定义:
变量名=数据
a1=100
a1="abc";
* 使用var定义
var a1=100;
或:
var a1;
a1 =100;
{
// let 局部变量,只在当前程序块{}可用,不可重复定义同一个变量
let a =1
alert(a)
// var 全局变量 可多次定义一个变量,后覆盖前
var b =2
var b =3
alert (b)
// const变量,用来定义常数,定义后不可重新赋值
const c =123
alert(c)
}
*/
</script>
基本数据类型
基本数据类型:6种
//基本数据类型
/*:基本数据类型:6种
*
*Number(数字) 可以时一个整数,也可以是一个浮点数
var d =123
var e =12.3
*String(字符串) 一个字符串变量
*Boolean(布尔) true/false
*Null(空):占位符 、Underfined(空) 空值
*Object(空) 数据元素属性及方法的集合
*/
//弹出数据类型typeof x
//var f = 1
//alert(typeof f)
</script>
转义字符:
/*转义字符:
* \’ 插入单引号
* \” 插入双引号
* \b 插入退格
* \f 插入换页符
* \n 插入换行符
* \t 插入指表符
* \r 插入回车符
*/
<script>
//var g = "提醒:“欢迎光临\”"
//alert (g)
//alert("aaa\n这是第二行显示的内容\n第三行\n单引号:\’,双引号:\”,,\r回车后下一行内容\n退格符:\b\n\n 张三说:“李四去找王五了\”")
/*var a =""
var b =null
alert (typeof a)
alert (typeof b)
var c = true
var d = false
alert (typeof c)
alert (typeof d)*/
//undefined
/*var w,x
alert (typeof w)
//未赋值运算后类型为number
y=w+x
alert (typeof y)
//返回 NaN(Not a Number)
alert (y)*/
</script>
表达式
运算符
<script>
/*
* 运算符
一元运算符:
++ /i++ 先用再加,++i先加再用
---
算数运算符:
+
-
*
/(取整)
% 模运算,取余
---
赋值运算符
=
+=
-=
var a=1
b=a
b+=a
b-=a
---
关系运算符:
>、<、>、>=、<=、!=、==、===
var a = 5
var b = "5"
alert(a==b)
//==:比较前会按照表面值来进行类型转换,返回true
alert(a===b)
//===:不做类型转换,直接进行比较
---
逻辑运算符
&&与
||或
!非
//&作为连接运算符,+
*
*/
</script>
三元运算符表达式
<script>
//三元运算符表达式
/*逻辑表达式?表达式1:表达式2
* 当逻辑表达式为true时执行表达式1,否则执行表达式2
*/
</script>
类型转换
<script>
//类型转换
//任何变量自带的toString方法,转换为字符串
/*var a=1
var b=true
var c=a.toString()
alert(c)
alert(typeof c)
var d=b.toString()
alert(d)
alert(typeof d)*/
//字符串转换为数字类型
/*
* parseInt()、parseFloat()
var c,d ="999"
var e=c.parseInt()
var f=d.parseFloat()
*/
//利用+直接将string转换为number
/*
var g=+"20"
alert(g)
alert(typeof g)
var a = -"20"
alert(typeof a)
var a = "20"
alert(a+1) //21
*/
//强制类型转换
/*
var a =123
alert(Bolean(a))
alert(Number(a))
alert(String(a))
var a ="ABC"
alert(Bolean(a))//非0为true
alert(Number(a))//NaN(属于number类型)
alert(String(a))
*/
</script>
条件、循环、终止语句
<script>
//三个条件、三个循环、两个终止
/* 条件语句
1. 单独的if语句
if(){
}
2.if else语句
if(){
}else{
}
3. if(){}else...if(){}else
if(){}elseif(){}else 选择用switch case
switch(){
case x:{... break;} break //跳出循环
case y:{... break;}
default:{... break;}//都无对应值条件则执行default
}
*//*
var num =90
if(num<60){
alert("不及格")
}else if(num<80){
alert("合格")
}else if(num <90){
alert("良好")
}else if(num<=100){
alert("优秀")
}else{alert("你无敌了")}
var a=70
if(60<a && a<=80){
alert("良好")
}
*//*
var a=100
var b
if(0<a&&a<60){
b=0
}else if(60<=a && a<80){
b=1
}else if(80<=a && a<90){
b=2
}else if(90<=a && a<=100){
b=3
}else{
alert("未知范围")
}
switch(b){
case 0:alert("不及格")
break;
case 1:alert("合格")
break;
case 2:alert("良好")
break;
case 3:alert("优秀")
break;
}*/
/* 循环语句
for while do...while
1. for(var i=0;i<=10;i++){
}
2.while(){
}
3.do{...}while()//先执行后判断,至少执行一次,while(){}先判断后执行
*/
/*终止语句
break;//跳出循环
continue;//跳出本次循环,进入下一次循环
*/
</script>
JavaScript对象
<script type="text/javascript">
//JavaScript对象
/*
* 1.String对象
var a ="aabbccdd"
var a =new String("字符串")
返回长度:a.length:8
常用方法:
charAt(offset)//返回字符串第offset+1个字符
var a="aabbccdd"
alert(a.charAt(4)):返回c ,aa对应为:01
charCode(offset)//返回字符串第offset+1个字符的ASCII码(十进制)
var a="a"
alert(a.charCode(offset)):返回a的ASCII码:97
indexOf(String)//返回字符串中string第一次出现的位置,如果字符串中不存在,则返回-1
var a=abcdefg
alert(a.indexOf(e)):返回e的位置:4
lastIndexOf(String)//返回字符串中string最后出现的位置,如果字符串中不存在,则返回-1
var a=abcdefg
alert(a.indexOf(e)):返回e的位置:4
split(string)//将字符串拆分为一个数组,以string为分割
如:var a="absjbnbfa"
a.split(b):a,s,j,n,f,a
substring(startpos,endpos)//返回字符串的第一个子字符串位置,该字符串是从主字符串的startpos(起始位置)到endpos(结束位置)[startpos,endpos)
toLowerCase()//将字符串全部用小写返回
toUpperCase()//将字符串全部用大写返回
var a=aAbBcCdDeE
var b=a.toLowerCase():b:aabbccddee
var c=a.toUpperCase():c:AABBCCDDEE
trim()//去处字符串中多余的空格字符
var a="1 a 2"
var b=a.trim()
//输出:a:1 a 2,b:1a2
*/
/*
*2.Array对象(数组对象)
//数组定义方式:
var a=new Array(1,2,3)
alert(a)
var b=[1,2,3,4]
数组位置 0 1 2 3
alert(b)
var b[10]=100
//数组长度可变
var b[9]="abcd"
//数组类型可变
alert(b[8])//未定义的数组则弹出undefined
//常用方法:
join(string)//将数组中个对象通过string连接起来组成一个字符串并返回,不写string默认为,
alert(b.join()):1234abcd100
alert(b.join("!")):1234!!!!!abcd100
reverse()//将数组中的元素对象倒排
alert(b.reverse()):100abcd,,,,,4321
slice(startpos,endpos)//返回数组的一个子集,startpos到endpos位置之间截取
//数组操作
1.push()//数组最后一位新增数据
var a =[1,2,3,4]
alert(a.push(5))
2.splice(开始位,结束位置)//删除掉第[开始位,结束位)个数组
var a =[1,2,3,4]
alert(a.splice(0,2))//34
3.遍历输出数组
var a=[100,1000,10000,100000]
for(var i=0;i<a.length;i++){
alert(a[i])
}
*/
/*
*3.Math对象
* Math对象,不需要形参,只需要输入实际参数
alert(Math.random())//随机生成(0,1)的随机数
Math.floor(a)//输出比a小的最接近a的整数
Math.sin(30)//需要引用圆周率后计算才准确
Math.sin(Math.PI/6)
Math.max(1,2,3,4,5,6)//6
Math.min(1,2,3,4,5,6)//1
Math.pow(3,2)//9
*/
/*
Date对象(日期)
var a =Date() //未设置参数得到本地时间
常用方法
get:
年份:
getYear()//得到的为:当前年份-1900
gerFullYear()//返回当前年份
getMonth()//获取月份 返回值+1为当前真实月份
getDate()//获取日期
getDay()//获取星期,0为星期日
set:
setFullYear(2024)//设置年份
a.setMonth(10)
getMonth(a)//返回11月
*/
</script>