wangjie-fourth 的个人博客

may be just need work hard

目录
JS语法
/  

JS语法

1、JS版本

  • ES 3IE6支持
  • ES 5
  • ES 6:大部分游览器支持
  • ES 2019:与ES6差别不大

JS是能够向上兼容的,也就说JS版本升级并不会对之前代码有影响。

2、JS大小写敏感

  • var avar A是不同的
  • objectObject是不同
  • functionFunction是不同的

3、标识符

(1)变量名命令规则
首字母是Unicode字母、$_、中文开头的字母,后面位置还可以是数字。

4、undefined的怪点

(1)有些函数表达式的返回值为undefined
image.png

(2)在逻辑运算符时,根据短路特性写出来的代码undeinedtrue

console && console.log && console.log('hi')
// 输出结果
hi

5、for循环执行顺序

(1)语法

for(语句1; 表达式2 ; 语句3){
    循环体;  
}

(2)执行顺序

  • 执行语句1;
  • 判断表达式2;
  • 执行循环体;
  • 执行语句3;跳回第二步;
相关的坑

(1)执行后i的值

for(var i = 0; i<5; i++){
}
// 此时i=5

(2)执行的结果
image.png

// 执行结果
5
5
5
5
5

如何解决这个问题?将var改为let

for(let i = 0; i<5; i++){
    setTimeout(() => {
        console.log(i);  
    })  
}

image.png

6、浮点数的坑:浮点永远不能比较

image.png

7、label:很少用

image.png


参考资料:

评论