包装对象规则

原创 Jessie_FANTASY 随笔 web前端 202阅读 2017-05-15 19:52:37 举报

总结一下,有这么几条规则需要遵守:

不要使用new Number()、new Boolean()、new String()创建包装对象;

用parseInt()或parseFloat()来转换任意类型到number;

用String()来转换任意类型到string,或者直接调用某个对象的toString()方法;

通常不必把任意类型转换为boolean再判断,因为可以直接写if (myVar) {...};

typeof操作符可以判断出number、boolean、string、function和undefined;

判断Array要使用Array.isArray(arr);

判断null请使用myVar === null;

判断某个全局变量是否存在用typeof window.myVar === 'undefined';

函数内部判断某个变量是否存在用typeof myVar === 'undefined'。
最后有细心的同学指出,任何对象都有toString()方法吗?null和undefined就没有!确实如此,这两个特殊值要除外,虽然null还伪装成了object类型。

更细心的同学指出,number对象调用toString()报SyntaxError:

评论 ( 3 )
最新评论
hugeannex 2F 2017-05-15 23:13:19 3F

忘了个console,再来。。。
javascript 代码

hugeannex 1F 2017-05-15 23:12:13 2F

来啊,补充啊。我也会。嘿嘿
javascript 代码

老姚 2017-05-15 20:10:26 1F

最后那句数字调用toString,报错是有原因的,因为3.toString()中的“点”,被解析成了小数点的点。javascript 代码