这个是Backbone.js中的一句源码
if (callback !== void 0 && 'context' in opts && opts.context === void 0) opts.context = callback;
此处void 0和undefined意义一样吗,我f12 chrome后,
undefined === void 0;//true
Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
有些浏览器允许你重写 undefined 而 void 0 一直返回 undefined
除了防止被重写外,还可以减少字节。void 0代替undefined省3个字节。
类似的还有很多常用的写法,看到别人这样写的时候就当是老司机的套路就行了。
---省略更多
因为void 0永远返回undefined
而undefined可以被重写,undefined其实是window的一个属性,可以给它赋值,这样undefined就不再是undefined了。