亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 語言 > JavaScript > 正文

javascript中Object使用詳解

2024-05-06 16:15:16
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了javascript中Object使用詳解,非常全面詳盡,有需要的小伙伴參考下
 

 

復制代碼代碼如下:

function forEach(o){
var html ="";
for(var i in o){
html += i+"="+o[i]+" ";
}
console.log(html);
console.log(o);
}

 

//1
//Object.create(proto)
//Object.create(proto,descriptors)
//使用指定的原型和屬性來創建一個對象
//參數:
//proto:新創建對象的原型,可為null
//descriptors:一個可選對象,把屬性名映射到屬性描述符
//返回一個新創建的對象,繼承自proto,同時擁有descriptors所秒速的屬性。

 

復制代碼代碼如下:

var obj = Object.create({x:1,y:2},{
z:{value:3,writable:true,enumerable:true,configurable:true}
});
forEach(obj)
obj.z=5
console.log(obj)
console.log("=====================================================")

 

//2
//Object.defineProperties(o,descriptors)
//創建或配置對象的多個屬性
//參數:
//o:要在其上創建或者配置屬性的對象
//descriptors:將屬性名映射到屬性描述符的對象
//返回對象o

 

復制代碼代碼如下:

Object.defineProperties(obj,{
a:{value:"a",writable:false,enumerable:true,configurable:true},
b:{value:"b",writable:false,enumerable:true,configurable:true}
})
forEach(obj);
console.log("=====================================================")

 

//3
//Object.defineProperty(o,name,desc)
//創建或配置對象的一個屬性
//參數:
//o:將在其上創建或配置屬性的對象
//name:將創建或配置的屬性名字
//desc:一個屬性描述符對象,描述要創建的新屬性或對現有屬性的修改
//返回對象o

 

復制代碼代碼如下:

Object.defineProperty(obj,"c",{value:"c",writable:false,enumerable:false,configurable:true})
forEach(obj);
console.log("=====================================================")

 

//4
//Object.freeze(o)
//將一個對象設為不可改變,不會影響繼承屬性
//參數:
//o:要凍結的對象
//返回 true|false

 

復制代碼代碼如下:

var p = {x:1,y:2}
Object.freeze(p);
p.x =2;
console.log(p);
console.log(Object.isFrozen(p)) //true,一旦凍結 無法解凍
console.log("=====================================================")

 

//5
//Object.getOwnPropertyDescriptor(o,name)
//參數:
//o:一個對象
//name:待查詢的屬性名
//查詢一個屬性的特性
//返回對象指定屬性的一個屬性描述符對象,如果不存在指定屬性則返回undefined.
/*
屬性描述符就是一個普通的javascript對象,描述某個對象的特性,有二種javascript屬性。數據屬性有一個值以及三個性質:可枚舉性(enumerable)、
可寫性(writable)、以及可配置性(configurable).訪問器屬性(accessor property)有一個getter和/或setter方法,以及可枚舉性。
數據屬性的描述符:
{
value:任意javascript值,
writable: true|false,
enumerable: true|false,
configurable:true|false
}
訪問器屬性的描述符:
{
get: function 或 undefined :替換屬性值
set: function 或 undefined :替換可寫性
enumerable:true|false,
configurable:true|false
}
*/

 

復制代碼代碼如下:

var o5 = Object.getOwnPropertyDescriptor(obj,"c");
console.log(o5);
forEach(o5);
console.log("=====================================================")

 

//6
//Object.getOwnPropertyNames(o)
//返回非繼承屬性的名字
//參數:
//o:一個對象
//返回一個包含o的所有非繼承屬性的名字,包括哪些不可枚舉的屬性。{enumerable:false}

 

復制代碼代碼如下:

var o6 = Object.getOwnPropertyNames(obj);
console.log(o6);
console.log("=====================================================")

 

//7
//Object.getPrototypeOf(o)
//參數:
//o:一個對象
//返回一個對象的原型

 

復制代碼代碼如下:

var o7 =Object.getPrototypeOf(obj);
console.log(o7);
console.log("=====================================================")

 

//8
//Object.hasOwnProperty(propname);
//參數:
//propname包含對象的屬性名的字符串
//檢查一個屬性是否是繼承的
//返回true|false

 

復制代碼代碼如下:

console.log(obj.hasOwnProperty("x")); //=>false
console.log(obj.hasOwnProperty("z")); //=>true
console.log("=====================================================")

 

//9
//Object.isExtensible(o);
//判斷某個對象上是否可以添加新屬性
//參數:
//o:待檢查可擴展性的對象
//返回 能添加為true|不能為false
//描述:所有的對象在創建的時候都是可擴展的,直到他們被傳入 Object.preventExtensions(o) Object.seal(o) 或 Object.freeze(o);

 

復制代碼代碼如下:

console.log(Object.isExtensible(obj)); // =>true
//Object.preventExtensions(obj)//將它設置為不可擴展
//console.log(Object.isExtensible(obj)); //=>false
console.log("=====================================================")

 

//10
//Object.isFrozen(o)
//判斷對象是否不可改變
//參數:
//o:待檢查的對象
//如果o已凍結并不改變則為true;否則為false;

 

復制代碼代碼如下:

console.log("=====================================================")

 

//11 
//object.isPrototypeOf(o)
//判斷當前對象是否為另一個對象的原型
//參數:
//o:所有對象
//如果object是o的原型 則為true,如果o不是一個對象或者object不是o的原型 則為false.

 

復制代碼代碼如下:

var o = new Object();
Object.prototype.isPrototypeOf(o) // true
Array.prototype.isPrototypeOf([1,2]) //true;
Object.prototype.isPrototypeOf(Function.prototype) //true
console.log("=====================================================")

 

//12
//Object.isSealed(o)
//判斷一個對象的屬性是否可添加或刪除
//參數:
//o:待檢查的對象
//如果o是封閉的則為true,否則為false.
//如果不可以向一個對象添加新的(非繼承)屬性,并且現有的(非繼承)屬性不可刪除,則是封閉的。
//封閉一個對象常用的方法是Object.seal(o) 或 Object.freeze(o)

console.log("=====================================================")

//13
//object.keys(o)
//返回自由的可枚舉屬性名
//參數:
//o:一個對象

 

復制代碼代碼如下:

console.log(Object.keys({x:1,y:2}) ) //=>[x,y]
console.log("=====================================================")

 

//14
//Object.preventExtensions(o)
//禁止在一個對象上添加新的屬性
//參數:
// o:待設置可擴展的對象
//一旦設為不可不可擴展,它就再也不能改為可擴展

console.log("=====================================================")


//15
//object.propertyIsEnumerable(propname)
//檢測某個屬性是否在for/in 中 循環可見
//參數
//propname:包含對象的指定屬性名的一個字符串
//如果對象有一個名為propname的非繼承屬性,并且該屬性可以枚舉,則返回true.

 

復制代碼代碼如下:

var o15 = new Object();
o15.x = 15;
o15.propertyIsEnumerable("x"); //true; 
o15.propertyIsEnumerable("y"); //false;
o15.propertyIsEnumerable("toString"); //false;
console.log("=====================================================")

 

//16
//Object.seal(o)
//阻止添加或刪除對象的屬性
//參數
//o:待封閉的對象
//返回處于封閉狀態的參數對象o

//17
//Object.toLocaleString()
//返回對象本地的本地化字符串標示
//Object類提供的默認的toLocaleString()方法只是簡單的調用toString()方法。
//不過要注意,其他類(Array、Date、Number等)都各自定義自己的這個方法的版本。用于執行本地化字符串轉換。定義自己的的類時,可能也需要覆蓋這個方法。

//18
//object.toString()
//定義一個對象的字符串表示形式
//在javascript程序中一般不會經常顯示的調用toString()方法。一般情況下,在對象中定義這個方法,系統會在需要時自動調用它以便將該對象裝換成字符串。

//19
//Object.valueOf()
//給定對象的原始值
//返回 與指定對象關聯的原始值,如果存在這樣一個值的話,如果沒有與改對象關聯的值,則返回對象本身


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲黄页视频免费观看| 97视频在线免费观看| 国产午夜精品麻豆| 国内精品视频在线| 国产亚洲欧洲高清一区| 97免费中文视频在线观看| 26uuu国产精品视频| 中文字幕在线观看日韩| 亚洲精品久久久久久久久久久久| 激情懂色av一区av二区av| 亚洲国产精久久久久久| 成人精品一区二区三区电影免费| 国产精品7m视频| 亚洲free性xxxx护士hd| 91黄色8090| 国产精品成久久久久三级| 欧美国产日韩一区二区三区| 91精品视频一区| 欧美精品免费在线| 91色中文字幕| 久久99久久99精品中文字幕| 中文字幕成人精品久久不卡| 日韩av在线网| 亚洲国语精品自产拍在线观看| 国产欧美韩国高清| 久久久亚洲影院| 日韩精品在线视频观看| 亚洲xxx大片| 色偷偷噜噜噜亚洲男人| 久久伊人精品一区二区三区| 日日狠狠久久偷偷四色综合免费| 国模私拍一区二区三区| 91久久久久久久久久| 欧美精品久久久久久久久| 欧美性感美女h网站在线观看免费| 国产精品福利在线观看网址| 国产精品三级美女白浆呻吟| 欧美极品少妇xxxxx| 日韩久久午夜影院| 日韩免费av片在线观看| 成人午夜激情免费视频| 日韩电影在线观看中文字幕| 欧美精品在线播放| 日韩在线精品一区| 国产精品福利观看| 久久综合久中文字幕青草| 欧美大尺度在线观看| 亚洲电影免费在线观看| 最近2019中文字幕第三页视频| 精品久久中文字幕| 少妇高潮久久77777| 疯狂做受xxxx高潮欧美日本| 国产日韩欧美电影在线观看| 亚洲男人的天堂在线播放| 国产日韩在线观看av| 国产99久久久欧美黑人| 日韩成人中文字幕| 欧美午夜精品在线| 国产一区二区三区视频免费| 欧美色道久久88综合亚洲精品| 精品久久久视频| 国产视频精品在线| 日本精品一区二区三区在线播放视频| 伊人精品在线观看| 高清一区二区三区四区五区| 精品动漫一区二区三区| 中文字幕欧美日韩va免费视频| 亚洲白虎美女被爆操| 成人妇女免费播放久久久| 欧美日韩在线观看视频| 日韩av免费在线看| 国产在线播放不卡| 91在线视频免费| 精品毛片三在线观看| 亚洲性视频网站| 在线播放国产一区中文字幕剧情欧美| 精品久久久久久中文字幕大豆网| 中文字幕国产亚洲| 欧美日韩国产91| 亚洲高清免费观看高清完整版| 日韩免费在线看| 精品露脸国产偷人在视频| 日韩一级裸体免费视频| 亚洲乱码国产乱码精品精| 日韩激情第一页| 欧美亚洲国产成人精品| 亚洲国产精品悠悠久久琪琪| 97精品在线视频| 精品少妇一区二区30p| 热re99久久精品国产66热| 免费91在线视频| 日韩精品在线观看网站| 在线观看欧美日韩| 久久精品99久久久久久久久| 高潮白浆女日韩av免费看| 欧美亚洲视频一区二区| 欧美极品少妇xxxxx| 国产精品免费久久久久影院| 午夜精品久久久久久久久久久久久| 国产精品劲爆视频| 国产精品久久精品| 亚洲va欧美va国产综合剧情| 久久久久一本一区二区青青蜜月| 国产精品女视频| 久久久久久国产精品美女| 国产精品久久久久久久久| 国产福利成人在线| 欧美日韩国产一区二区| 不卡毛片在线看| 亚洲伊人久久综合| 色婷婷综合成人av| 欧美一区三区三区高中清蜜桃| 曰本色欧美视频在线| 高清欧美一区二区三区| 亚洲高清在线观看| 国产成人精品一区二区三区| 大桥未久av一区二区三区| 国内外成人免费激情在线视频| 欧美综合国产精品久久丁香| 中文字幕亚洲第一| 亚洲永久免费观看| 国产精品视频精品视频| 国产裸体写真av一区二区| 久久人人爽人人爽人人片av高请| 亚洲精品黄网在线观看| 国产高清在线不卡| 欧美孕妇性xx| 亚洲激情中文字幕| 欧美黑人一区二区三区| 九九九久久国产免费| 午夜精品在线视频| 黄色精品一区二区| www.欧美三级电影.com| 日韩中文字幕在线看| 精品久久久久久久久久久久久久| 色综合男人天堂| 亚洲激情第一页| 国产成人福利视频| 日本欧美黄网站| 精品国产一区二区三区久久狼5月| 在线观看国产精品日韩av| 午夜免费久久久久| 欧美性极品少妇精品网站| 国产精选久久久久久| 国产偷亚洲偷欧美偷精品| 久久久久久久久爱| 国产成人精品视频在线| 国产精品吹潮在线观看| 国产成人精品日本亚洲专区61| 国产精品久久久久久久久久久久| 91网在线免费观看| 亚洲电影免费在线观看| 91色在线视频| 日本午夜在线亚洲.国产| 久久九九全国免费精品观看| 日韩av三级在线观看| 欧美国产日韩二区| 97福利一区二区| 欧美激情在线视频二区| 欧美黄色片在线观看| 欧美精品久久久久久久久| 欧美激情中文字幕乱码免费| 亚洲美女免费精品视频在线观看| 国产在线视频欧美|