摘要:解讀中的方法的第一個(gè)參數(shù)是待創(chuàng)建對象的原型對象,第二個(gè)參數(shù)是待創(chuàng)建對象的屬性定義。
Object解讀
Object中的create方法的第一個(gè)參數(shù)是待創(chuàng)建對象的原型對象,第二個(gè)參數(shù)是待創(chuàng)建對象的屬性定義。 **屬性定義解讀如下:** 其中第二個(gè)參數(shù)是可選的,如果被指定了且不是undefined類型, 一個(gè)對象的可枚舉的自身的屬性(并非原型鏈上的可枚舉屬性) 指定的屬性描述符將會(huì)被添加到新創(chuàng)建的對象,和指定的屬性名稱一樣, 這個(gè)參數(shù)的形式和使用Object.defineProperties()方法的的第二個(gè)參數(shù)是一致的。 返回值: 一個(gè)以第一個(gè)參數(shù)為原型對象且含有第二個(gè)參數(shù)指定的屬性的新創(chuàng)建的對象 異常:當(dāng)?shù)诙€(gè)參數(shù)不是空或者或者是一個(gè)普通對象;
示例
//shape -super class function Shape(){ this.x=0; this.y=0; }; //super class method Shape.prototype.move=function(x,y){ this.x+=x; this.y+=y; console.info("shape moved...."); }; //Rectangle -sub class function Rectangle(){ Shape.call(this);//使用對象冒充實(shí)現(xiàn)繼承 }; //sub class extends super class Rectangle.prototype = Object.create(Shape.prototype); Rectangle.prototype.constructor = Rectangle; var rect = new Rectangle(); console.log("Is rect an instance of Rectangle?",rect instanceof Rectangle); //will output true console.log("Is rect an instance of Shape?",rect instanceof Shape);// will output true rect.move(1,1);// will output "shape moved...."
Object.create的使用范例:
//原型對象 var proto = { init:function(){ console.info("init method..."); }, service:function(){ console.info("service method"); }, destroy:function(){ console.info("destroy method.."); } } //目標(biāo)對象 var target = Object.create(proto,{ k_init:{ value:function(){ console.info("k_init method..."); } }, k_service:{ value:function(){ console.info("k_service method..."); } }, k_destroy:{ value:function(){ console.info("k_destroy method..."); } } });
console.info(target)--->輸入如下:
console.info(Object.getPrototypeOf(target))--->輸出如下:
未完待續(xù)...
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/82433.html
摘要:對象的分類內(nèi)置對象原生對象就是語言預(yù)定義的對象,在標(biāo)準(zhǔn)定義,有解釋器引擎提供具體實(shí)現(xiàn)宿主對象指的是運(yùn)行環(huán)境提供的對象。不過類型是中所有類型的父級所有類型的對象都可以使用的屬性和方法,可以通過的構(gòu)造函數(shù)來創(chuàng)建自定義對象。 對象 javaScript中的對象,和其它編程語言中的對象一樣,可以比照現(xiàn)實(shí)生活中的對象來理解。在JavaScript中,一個(gè)對象可以是一個(gè)單獨(dú)擁有屬性和類型的實(shí)體。和...
摘要:檢測數(shù)據(jù)類型中可以使用操作符來判斷數(shù)據(jù)類型。調(diào)用函數(shù)時(shí),某個(gè)參數(shù)未設(shè)置任何值,這時(shí)就可以傳入,表示該參數(shù)為空。我們約定普通函數(shù)以小寫字母開頭,構(gòu)造函數(shù)以大寫字母開頭。五原型以及原型鏈未完待續(xù) 一、數(shù)據(jù)類型 在javascript中的數(shù)據(jù)類型可以分為兩種類型,基本數(shù)據(jù)類型和引用數(shù)據(jù)類型。其中基本數(shù)據(jù)類型包括String, Number, Boolean,null,undefined,Sy...
摘要:張無忌對象的屬性存在對象的屬性不存在使用進(jìn)行判斷。張無忌對象的屬性存在請先定義對象的屬性使用語句進(jìn)行判斷張無忌對象的屬性存在刪除對象的屬性可以用操作符刪除一個(gè)不是繼承而來的屬性。 對象 對象的概述 對象是什么 JavaScript中的對象,和其他編程語言中的對象一樣。可以對比現(xiàn)實(shí)生活中的一些東西來理解他。在JavaScript中,一個(gè)對象可以使一個(gè)單純的擁有屬性和類型的實(shí)體。假如和一個(gè)...
摘要:對象對象是什么中的對象和其他編程語言中的對象一樣可以比照現(xiàn)實(shí)上活中的對象來理解它中對象的概念可以比照現(xiàn)實(shí)生活中實(shí)實(shí)在在的物體來理解在中一個(gè)對象可以是一個(gè)單獨(dú)的擁有屬性和類型的實(shí)體拿它和一個(gè)杯子做下類比一個(gè)杯子是一個(gè)對象擁有屬性杯子有顏色圖案 對象 對象是什么 JavaScript中的對象 和其他編程語言中的對象一樣 可以比照現(xiàn)實(shí)上活中的對象來理解它JavaScript中對象的概念可以比...
摘要:對象對象的概念所謂對象就是是一個(gè)擁有屬性和方法的集合體對象的分類內(nèi)置對象原生對象引用類型可以稱作為內(nèi)置對象宿主對象就是寄生在一個(gè)東西上的對象比如瀏覽器提供的對象比如自定義對象開發(fā)人員創(chuàng)建的對象對象是什么類型是所有類型的父級創(chuàng)建對象對象的初始 對象 對象的概念 所謂對象就是是一個(gè)擁有屬性和方法的集合體 對象的分類 內(nèi)置對象/原生對象: 引用類型可以稱作為內(nèi)置對象 宿主對象: 就...
閱讀 430·2024-11-07 18:25
閱讀 130684·2024-02-01 10:43
閱讀 923·2024-01-31 14:58
閱讀 893·2024-01-31 14:54
閱讀 82949·2024-01-29 17:11
閱讀 3225·2024-01-25 14:55
閱讀 2036·2023-06-02 13:36
閱讀 3133·2023-05-23 10:26