此arguments.callee实例的严格模式替代方案
Strict mode alternatives to this instanceof arguments.callee
有一个老技巧(我在SO上学到的)可以抓住将构造函数作为函数调用的问题,即忘记new
关键字。下面,或者类似的东西,它进入顶部的每个构造函数。
if (!(this instanceof arguments.callee)) {
throw Error("Constructor called as a function");
}
当您需要"use strict";
时,有哪些替代方案?
能否保留其通用性?或者我们必须使用构造函数的名称来代替arguments.callee
?
arguments.callee
本身已被弃用,取而代之的是命名函数表达式。虽然我不一定同意这一举措,但事情就是这样发展的。因此,在严格模式下,用函数名替换arguments.callee
是唯一的方法,在非严格模式下也是首选方法。
相关文章:
- 轻量级zxcvbn替代方案
- 正在寻找比$(document).ready慢的$(window).load的替代方案
- ng映射方向备选方案
- Javascript,访问一个主要对象模块模式中的每个对象
- 是否有任何snippet或jQuery插件可以列出easylist.txt模式匹配的DOM中的所有元素
- 试图在引导模式内动态生成图表,得到offsetWidth错误
- 同位素库错误:未捕获错误无布局模式包装生产线8
- 在DOM中查找一个模式并替换它's的内容使用jquery
- 如何缩短MongoDB ObjectId并在Mongoose模式中使用它
- D3.js模式不适用于弧形或圆环图
- 设置多个观察程序以触发动态事件的角度替代解决方案 - 优化的观察者模式
- var self=此模式的备选方案
- JavaScript 模块模式和它的替代方案有什么区别
- 是否有可能让w regexp模式允许诸如é吗?如果不是,还有什么替代方案呢?
- 当模式打开时,任何人都可以建议在firefox中使用箭头键滚动页面的解决方案
- IE7 Quirks模式下jQuery Ui对话框的替代方案
- 此arguments.callee实例的严格模式替代方案
- 带有UpdatePanel的ASP.NET启动模式-可能的解决方案
- 我如何使太多的属性可读模块模式和有任何替代方案
- 克罗克福德式原型模式明白了;寻找一个优雅的解决方案