ES6學(xué)習(xí)筆記—Class基本語(yǔ)法

1、引言

JavaScript是一門(mén)基于原型繼承的語(yǔ)法,ES5中我們實(shí)現(xiàn)面向?qū)ο髽?gòu)造“父類”的寫(xiě)法一般通過(guò)構(gòu)造函數(shù)寫(xiě)入基本屬性、通過(guò)原型prototype寫(xiě)入基本的方法,下面是一個(gè)例子
demo

function Point(x, y) {
  this.x = x;
  this.y = y;
}

Point.prototype.toString = function () {
  return '(' + this.x + ', ' + this.y + ')';
};

var p =new Point(1,2)

ES6的class可以看作一個(gè)語(yǔ)法糖,ES6中引入的新屬性class,通過(guò)class可以讓對(duì)象原型的寫(xiě)法更加清晰、更像面向?qū)ο缶幊痰恼Z(yǔ)法而已,上面的例子通過(guò)ES6的class改寫(xiě),

//定義一個(gè)Point類
class Point {
  constructor(x,y) {
    this.x = x;
    this.y = y;
  }

  toString() {
    return '(' + this.x + ', ' + this.y + ')';
  }
}
  • 嚴(yán)格模式
    類和模塊的內(nèi)部,默認(rèn)就是嚴(yán)格模式,因而不需要使用use strict指定運(yùn)行模式。當(dāng)我們將代碼寫(xiě)在類和模塊之中,就只有嚴(yán)格模式可用

2、類的實(shí)例對(duì)象

當(dāng)我們生成類的實(shí)例對(duì)象的寫(xiě)法,與ES5完全一樣,即使用new命令,實(shí)例的屬性除顯式定義在本身(定義this對(duì)象),否則定義在原型上(定義在class上),下面寫(xiě)一個(gè)例子

//定義類
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)

//檢驗(yàn)實(shí)例的對(duì)象繼承的屬性在本身還是原型對(duì)象上
point.hasOwnProperty('x') // true
point.hasOwnProperty('y') // true
point.hasOwnProperty('toString') // false
point.__proto__.hasOwnProperty('toString') // true
  • 與ES5一樣,類的所有實(shí)例共享一個(gè)原型對(duì)象,demo測(cè)試如下
var p1 = new Point(2,3);
var p2 = new Point(3,2);

p1.__proto__ === p2.__proto__     //true

3、私有方法和私有屬性

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • class的基本用法 概述 JavaScript語(yǔ)言的傳統(tǒng)方法是通過(guò)構(gòu)造函數(shù),定義并生成新對(duì)象。下面是一個(gè)例子: ...
    呼呼哥閱讀 4,210評(píng)論 3 11
  • 三,字符串?dāng)U展 3.1 Unicode表示法 ES6 做出了改進(jìn),只要將碼點(diǎn)放入大括號(hào),就能正確解讀該字符。有了這...
    eastbaby閱讀 1,674評(píng)論 0 8
  • 1.屬性的簡(jiǎn)潔表示法 允許直接寫(xiě)入變量和函數(shù) 上面代碼表明,ES6 允許在對(duì)象之中,直接寫(xiě)變量。這時(shí),屬性名為變量...
    雨飛飛雨閱讀 1,283評(píng)論 0 3
  • 以下內(nèi)容是我在學(xué)習(xí)和研究ES6時(shí),對(duì)ES6的特性、重點(diǎn)和注意事項(xiàng)的提取、精練和總結(jié),可以做為ES6特性的字典;在本...
    科研者閱讀 3,287評(píng)論 2 9
  • 醉倚闌干,懶對(duì)鏡梳妝。晨起推窗,驚見(jiàn)初雪上。 素縷渺渺,煙紗籠末梢。眉眼兒翹,極目云天眺。
    石衡閱讀 274評(píng)論 0 0

友情鏈接更多精彩內(nèi)容