1、文字从左至右渐变颜色
div {
background: linear-gradient(to right, #4CE1C6, #2EBDCA);
-webkit-background-clip: text;
color: transparent;
}
2、0.1+0.2为什么不等于0.3?
0.1和0.2在转换成二进制后会无限循环,由于标准位数的限制后面多余的位数会被截掉,此时就已经出现了精度的丢失,相加后因浮点数小数位的限制而截断的二进制数字在转换为十进制就会变成 0.30000000000000004。
3、[] == ![]结果是什么?
== 中,左右两边都需要转换为数字然后进行比较。 []转换为数字为0。 ![] 首先是转换为布尔值,由于[]作为一个引用类型转换为布尔值为true, 因此![]为false,进而在转换成数字,变为0。 0 == 0 , 结果为true。
4、如何判断一个对象是否为空对象?
// 方法1
Object.keys(obj).length === 0
// 方法2
JSON.stringify(obj) === '{}'
5、JS代码中的use strict是什么意思?
use strict是一种ECMAscript5添加的(严格)运行模式,这种模式使得Javascript 在更严格的条件下运行。 设立"严格模式"的目的,主要有以下几个:消除Javascript语法的一些不合理、不严谨之处,减少一些怪异行为;消除代码运行的一些不安全之处,保证代码运行的安全;提高编译器效率,增加运行速度;为未来新版本的Javascript 做好铺垫。