以下是读犀牛书时感觉非常简单但是又非常有用的东西,随笔记一下,会随着阅读进度慢慢更新
-
- ES5中没有经过
var声明的变量,不能被delete
- ES5中没有经过
-
- 原始值不能被更改,数值和布尔好理解,但是对于字符串,我们或许认为可以通过索引修改某一个字符,事实上,JS不允许这样做
let s = ''hello; s.toUpperCase(); //返回HELLO console.log(s); //返回hello s没有改变 -
- 新的数值类型
bigInt- 通过bigInt表示任意精度证书,结尾加上n表示bigInt字面量
- 新的数值类型
-
??操作符,与||类似,但是不同,意思是左侧值为null或undefined时,返回右侧的数
let a, b = 10; console.log(a ?? b); // 返回10 -
- 条件式属性访问 -
a?.b或a?.['b'],对于obj.a.b.c,如果除了c之外的属性为null或undefined,使用属性访问会报TypeError错误,使用if进行判断的话又十分的麻烦
- 条件式属性访问 -
-
Object.keys():返回对象属性名数组Object.values():返回对象键值数组,Object.entries():返回对象的键值对数组,数组每一项为键和键值