■知识点
在普通函数内,使用arguments.callee可以引用函数自身。如果在严格模式下,是不允许使用arguments.callee引用函数的,这时可以使用new.target来访问构造函数。
■实例设计
下面的示例在构造函数内部使用new.target指代构造函数本身,以便对用户操作进行监测,如果没有使用new命令,则强制使用new实例化。
function Point (x, y) { //构造函数
'use strict'; //启用严格模式
if(!(this instanceof new.target)) return new new.target(x, y);
//检测this是否为实例对象
this.x = x; //私有属性
this.y = y //私有属性
}
var p1 = new Point (100,200) ; //实例化对象 1
console . log (pi .x) ; //100
已有 22658 名学员学习以下课程通过考试
最需教育客户端 软件问题一手掌握
去 App Store 免费下载 iOS 客户端
点击加载更多评论>>