ES6中定義類和對象的方法示例
本文實(shí)例講述了ES6中定義類和對象的方法。分享給大家供大家參考,具體如下:
類的基本定義和生成實(shí)例:
// 類的基本定義和生成實(shí)例 class Parent{ //定義一個類 constructor(name='xiaxaioxian'){ this.name= name; } } // 生成一個實(shí)例 let g_parent = new Parent(); console.log(g_parent); //{name: "xiaxaioxian"} let v_parent = new Parent('v') // 'v'就是構(gòu)造函數(shù)name屬性 , 覆蓋構(gòu)造函數(shù)的name屬性值 console.log(v_parent); // {name: "v"}
繼承
// 繼承 class Parent{ //定義一個類 constructor(name='xiaxaioxian'){ this.name= name; } } class Child extends Parent{ } console.log('繼承',new Child()) // 繼承 {name: "xiaxaioxian"}
繼承傳遞參數(shù)
// 繼承傳遞參數(shù) class Parent{ //定義一個類 constructor(name='xiaxaioxian'){ this.name= name; } } class Child extends Parent{ constructor(name = 'child'){ // 子類重寫name屬性值 super(name); // 子類向父類修改 super一定放第一行 this.type= 'preson'; } } console.log('繼承',new Child('hello')) // 帶參數(shù)覆蓋默認(rèn)值 繼承{name: "hello", type: "preson"}
ES6重新定義的ES5中的訪問器屬性
class Parent{ //定義一個類 constructor(name='xiaxaioxian'){ this.name= name } get longName(){ // 屬性 return 'mk' + this.name } set longName(value){ this.name = value } } let v = new Parent(); console.log('getter',v.longName) // getter mkxiaxaioxian v.longName = 'hello'; console.log('setter',v.longName) // setter mkhello
類的靜態(tài)方法:
class Parent{ //定義一個類 constructor(name='xiaxaioxian'){ this.name= name } static tell(){ // 靜態(tài)方法:通過類去調(diào)用,而不是實(shí)例 console.log('tell') } } Parent.tell(); // tell
類的靜態(tài)屬性:
// 靜態(tài)屬性 class Parent{ //定義一個類 constructor(name='xiaxaioxian'){ this.name= name } static tell(){ // 靜態(tài)方法:通過類去調(diào)用,而不是實(shí)例 console.log('tell') // tell } } Parent.type = 'test'; // 定義靜態(tài)屬性 console.log('靜態(tài)屬性',Parent.type) // 靜態(tài)屬性 test let v_parent = new Parent(); console.log(v_parent); // {name: "xiaxaioxian"} 沒有tell方法和type屬性
感興趣的朋友可以使用在線HTML/CSS/JavaScript代碼運(yùn)行工具:http://tools.jb51.net/code/HtmlJsRun測試上述代碼運(yùn)行效果。
更多關(guān)于JavaScript相關(guān)內(nèi)容可查看本站專題:《javascript面向?qū)ο笕腴T教程》、《JavaScript錯誤與調(diào)試技巧總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》及《JavaScript數(shù)學(xué)運(yùn)算用法總結(jié)》
希望本文所述對大家JavaScript程序設(shè)計(jì)有所幫助。
- ES6數(shù)組與對象的解構(gòu)賦值詳解
- ES6新特性六:promise對象實(shí)例詳解
- ES6學(xué)習(xí)教程之對象的擴(kuò)展詳解
- ES6 迭代器與可迭代對象的實(shí)現(xiàn)
- ES6知識點(diǎn)整理之對象解構(gòu)賦值應(yīng)用示例
- ES6 Promise對象概念與用法分析
- ES6學(xué)習(xí)筆記之字符串、數(shù)組、對象、函數(shù)新增知識點(diǎn)實(shí)例分析
- ES6學(xué)習(xí)教程之對象字面量詳解
- ES6 對象的新功能與解構(gòu)賦值介紹
- ES6 Promise對象的應(yīng)用實(shí)例分析
- JS面向?qū)ο缶幊獭狤S6 中class的繼承用法詳解
- ES6對象操作實(shí)例詳解
相關(guān)文章
深入分析escape()、encodeURI()、encodeURIComponent()的區(qū)別及示例
這篇文章主要介紹了escape()、encodeURI()、encodeURIComponent()的區(qū)別,需要的朋友可以參考下2014-08-08找到了一篇jQuery與Prototype并存的沖突的解決方法
找到了一篇jQuery與Prototype并存的沖突的解決方法...2007-08-08JS非Alert實(shí)現(xiàn)網(wǎng)頁右下角“未讀信息”效果彈窗
這篇文章主要介紹了JS非Alert實(shí)現(xiàn)網(wǎng)頁右下角“未讀信息”效果彈窗的方法,涉及JavaScript動態(tài)操作頁面元素實(shí)現(xiàn)彈窗效果的相關(guān)技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-09-09javascript實(shí)現(xiàn)顯示和隱藏div方法匯總
本文章通過幾個簡單的實(shí)例告訴你如何來實(shí)例關(guān)于隱藏與顯示div層及關(guān)閉層與隱藏的區(qū)別分析哦,有需要的同學(xué)可以參考一下本文章。2015-08-08javascript創(chuàng)建頁面蒙板的一些知識技巧總結(jié)
javascript創(chuàng)建頁面蒙板的一些知識技巧總結(jié)...2007-08-08layui 上傳插件 帶預(yù)覽 非自動上傳功能的實(shí)例(非常實(shí)用)
今天小編就為大家分享一篇layui 上傳插件 帶預(yù)覽 非自動上傳功能的實(shí)例(非常實(shí)用),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-09-09js模擬淘寶網(wǎng)的多級選擇菜單實(shí)現(xiàn)方法
這篇文章主要介紹了js模擬淘寶網(wǎng)的多級選擇菜單實(shí)現(xiàn)方法,涉及javascript針對頁面元素結(jié)點(diǎn)的遍歷與設(shè)置等操作技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-08-08用JavaScript 處理 URL 的兩個函數(shù)代碼
用JavaScript 處理 URL 的兩個函數(shù)代碼...2007-08-08