在实际的使用过程中,有遇到过需要将undefined字段转为数字0的情况:
比如需要累加计算几个字段的值,其中某个字段可能会是undefined或者为字符串的情况,此时累加计算出的结果就不是一个数字,而是字符串累加或者NaN,影响计算结果。
使用~~来对变量进行二次取反,可得到整数数字:
~~运算符会将字符串数字会转化为数字,非数字字符、空、undefined会转化为整数数字0
var element = {a: 1, b: '0', c: 0}
let {a,b,c} = element;
var d = a + b + c;
// d = 100;
d = ~~a + ~~b + ~~c;
// d = 1;