undefined=true;然后返回到未定义
undefined = true; then back to undefined?
一些javascript错误:
如果这有效
undefined = true;
那么如何恢复到将undefined
设置回表示undefined
?
当然,简单的方法是在将undefined
设置为true
之前将undefined
存储在另一个变量中。您还有什么其他方法可以恢复undefined
?
首先想到的是delete undefined;
,没有起作用。
Alex的答案是确保undefined
真正未定义的安全实用的方法。
但是JS是超级灵活的,所以为了好玩,如果你想恢复全局undefined
,那么你可以从新功能范围的安全性中重新分配window.undefined
:
(function () { // Create a new scope
var a; // "a" is undefined in this scope
window.undefined = a; // Set the global "undefined" to "a"
})() // Execute immediately
进一步考虑这个想法,您可以将上面的内容重新配置为:
undefined = (function () {
var a; // "a" is undefined
return a; // return "a"
})();
或者真的,只是这个:
undefined = (function () {
return;
})();
但事实上,您实际上不需要返回任何东西:
undefined = function(){}();
当然,还有void
运算符;-(doh
undefined = void 0;
(function(undefined) {
// undefined is undefined again!
})();
jQuery使用这种模式。
delete
运算符最适合从对象中删除属性。有很多事情它不起作用,将它与Array
一起使用只会将元素设置为undefined
(有点像,它不会与in
一起枚举(。最好将splice()
与Array
一起使用。
相关文章:
- 这.SOMETHING 总是返回未定义的 - extjs
- React+Meteor:this.ops返回未定义
- 解析-为什么user.getSessionToken()返回未定义的结果
- Javascript函数返回未定义
- JavaScript-获取数据属性的值返回未定义的值
- .val()返回未定义的.text返回随机代码
- 为什么innerHTML返回“未定义”
- "这个“;正在返回未定义的
- 谷歌地图:函数返回未定义的值在console.log中运行良好
- Javascript json返回未定义
- importScripts在web工作程序中返回未定义的
- 访问嵌套 json 对象的属性将返回未定义
- NativeAppEventEmitter返回未定义的
- 我的函数返回“未定义”
- 新手Javascript函数返回未定义的石头剪刀游戏
- Nodejs模块函数返回未定义的,而不是异步的
- .getElementById在.createTextNode中返回未定义
- javascript函数不返回未定义的值
- Typeahead的Javascript类型返回未定义
- Javascript可见元素返回未定义