JS 的基本语法

154 阅读1分钟

表达式

一般有值

1+2(3),函数(返回值),console.log(console.log)

console.log(3)(undefine)打印出3

语句

可能没有值

var a=1(undefine)

回车

return后面加回车的话会自动补充undefine

function fn(){
return //undefine
3
}

标识符

规则

unicode字母//_/中文+[unicode字母//_/中文、数字]

条件

if

if(表达式){语句1}else{语句2}

  • 表达式 1==2数字写左边,避免错写成赋值

  • 或者用个报错编辑器

if(a===2) console.log('a'),console.log('a=2')

两个都打,因为,默认是一个语句

switch

switch(fruit){

case 'as':

//...

break;

default:

//...

}

break坑

另类判断

判断&&or||执行 当成一个if-elase:

&&

前面的值为假,后面的值不用判断直接跳过

if(前面){后面} A&&B

假如前面为真值,则执行后面语句

||

前面的值为真,后面的值不用判断直接跳过,结果都是真

if() {前面}else{后面} A=A||B

假如前面为假值,则执行后面语句

while for

while(表达式){语句}

for(i=0;i<10;i++){}

a=a+0.1 永远到不了1--浮点数

for(var i=0;i<5;i++){

setTimeout(()=>{

console.log(i)

},0)

}

i打印5次,都是5


for(let i=0;i<5;i++){

setTimeout(()=>{

console.log(i)

},0)

}

打印01234


for(;i<5;i++)在外面赋值了i可不写到里面

break continue

break退出当前循环,不会退出当前循环上一级循环

continue退这次循环,进入下一次循环

label

foo:{}代码块的标签

{foo:1} 1的标签