声明:本文目的在于记录自己学习前端知识的过程,很多东西来源于网络和课程,可能存在出入。
JS的语法很少很基础,入门会比较快。
1.表达式和语句
在JS中,表达式一般会产生一个值。
1+2
3+x
console.log(3) //它的值为undefined
而语句一般为改变环境的行为,如循环语句和if语句等。
var c
if(b>0) {
c=b;
}
2.标识符的规则
- 标识符的第一个字符可以是Unicode字母(可以是非英语字母)、中文、$其中之一;
- 标识符后面的字符除了以上还包括数字。
3.if else 语句
if (表达式) {
return 表达式
}
if (表达式) {
return 表达式
}else if (表达式) { //其实是两个if else 语句的合成,花括号在其中语句之间加上逗号,的情况下能省略
return 表达式
}
并列的多个if语句,程序是会将每个if语句都进行判断,只有为真才会执行if语句后面的语句块,当为假时,就会去执行下一个if语句进行判断,直到所有的if语句都判断完。
而if-else-if,就不是并列的关系了,它在一定情况下是不会将整个if语句都进行判断了,当满足一个if语句判断为真,那么它执行完if语句后面的语句块,就会不再执行后面的else-if语句了。
4.while for 语句
while (表达式) {
语句
}
//for循环是while循环的方便写法
for (语句1;表达式2;语句3) {
循环体
}
for(var i=0;i<5;i++) {
setTimeout(()=>{
console.log(i)
,0}
)
} //输出结果为5个5
for(let i=0;i<5;i++) {
setTimeout(()=>{
console.log(i)
,0}
)
} //输出结果为0,1,2,3,4。这是let和var的区别。
5.break和continue
break退出循环。continue终止本次循环,并进行下次循环
6.label
{
foo: 1; //foo是一个label 它的语句为1
//在firefox和google中均为1,但是表达式末尾不加分号,在Firefox返回1,在google中为{foo :1}
}
tips
const一般认为是常量声明。使用规则和let几乎一致,但是const必须在声明时就赋值,且不可更改。