标签:str highlight property 使用 生成 变量 const color w命令
生成类的实例的写法,与 ES5 完全一样,也是使用new命令。
如果忘记加上new,像函数那样调用Class,将会报错。 class Point { // ... } // 报错 var point = Point(2, 3); // 正确 var point = new Point(2, 3);
this
对象上),否则都是定义在原型上(即定义在class
上)//定义类 class Point { constructor(x, y) { this.x = x; this.y = y; } toString() { return ‘(‘ + this.x + ‘, ‘ + this.y + ‘)‘; } } var point = new Point(2, 3); point.toString() // (2, 3) point.hasOwnProperty(‘x‘) // true point.hasOwnProperty(‘y‘) // true point.hasOwnProperty(‘toString‘) // false point.__proto__.hasOwnProperty(‘toString‘) // true 上面代码中,x和y都是实例对象point自身的属性(因为定义在this变量上),所以hasOwnProperty方法返回true,
而toString是原型对象的属性(因为定义在Point类上),所以hasOwnProperty方法返回false。
这些都与 ES5 的行为保持一致。
var p1 = new Point(2,3); var p2 = new Point(3,2); p1.__proto__ === p2.__proto__ //truep1
和p2
都是Point
的实例,它们的原型都是Point.prototype
,所以__proto__
属性是相等的。
标签:str highlight property 使用 生成 变量 const color w命令
原文地址:https://www.cnblogs.com/blogZhao/p/12566769.html