中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久

JS 對象屬性相關(檢查屬性、枚舉屬性等)
來源:易賢網 閱讀:988 次 日期:2015-04-08 14:12:02
溫馨提示:易賢網小編為您整理了“JS 對象屬性相關(檢查屬性、枚舉屬性等)”,方便廣大網友查閱!

1.刪除屬性

delete運算符可以刪除對象的屬性

代碼如下:

delete person.age //即person不再有屬性age

delete person['age'] //或者這樣

delete只是斷開屬性和宿主對象的聯系,而不會去操作屬性中的屬性 看到delete a.p之后b.x仍然為1

var a = {p:{x:1}};

var b = a.p;

console.log(a.p.x); //1

delete a.p;

console.log(a.p.x); //TypeError a.p is undefined

console.log(a.p); //undefined

console.log(b.x); //1

delete只能刪除自有屬性,不能刪除繼承屬性(要刪除繼承屬性必須從定義這個屬性的原型對象上刪除它,當然,這會影響到所有繼承來自這個原型的對象)

function inherit(p){

if(p == null){ // 不能從null中繼承

throw TypeError();

}

if(Object.create){ //如果有這個方法就直接使用

return Object.create(p);

}

var t = typeof p;

if(t !== "object" || t !== "function"){ //要繼承的對象 類型要符合

throw TypeError();

}

function f(){ }; //定義一個空的構造函數

f.prototype = p; //原型指向要繼承的對象p

return new f(); //創建f對象,此對象繼承自p

}

var obj = {x:1};

var obj1 = inherit(obj);

obj1.y = 2;

console.log("x = "+obj1.x+" y = "+obj1.y); //x = 1 y = 2

delete obj1.x;

delete obj1.y;

console.log("x = "+obj1.x+" y = "+obj1.y); //x = 1 y = undefined

當然了,可配置的屬性才能用到delete

比如

delete Object.prototype; // 不能刪除 不可配置

var x = 1;

delete this.x; //不能刪除

this.y = 1;

delete y; //這樣可以刪除

function f(){ }

delete this.f; //不能刪除

2.檢測屬性

使用 “in"

in 運算符希望它的左操作數是一個字符串或者可以轉換為字符串,希望它的右操作數是一個對象

var data = [5,6,7];

console.log("0" in data); //有下標0

console.log(1 in data); //1可以轉換成"1"

console.log("4" in data); //下標只有 1 2 3

var obj = {x:1};

console.log("x" in obj); //true

console.log("y" in obj); //false

console.log("toString" in obj); //true 因為obj繼承了這個方法

使用hasOwnProperty()或者propertyIsEnumerable() --- 后者是前者的增強

顧明思議

var obj = {x:1};

console.log(obj.hasOwnProperty("x")); //true

console.log(obj.hasOwnProperty("y")); //false

console.log(obj.hasOwnProperty("toString")); //false 因為obj繼承了這個方法,但不是它自己的

只有檢測到是自由屬性并是可枚舉的屬性時,后者才返回true

var obj = {x:1};

console.log(obj.propertyIsEnumerable("x")); //true

console.log(obj.propertyIsEnumerable("y")); //false

console.log(obj.propertyIsEnumerable("toString")); //false 因為obj繼承了這個方法,但不是它自己的

console.log(Object.prototype.propertyIsEnumerable("toString")); //false 因為最原始的的 toString就是不可枚舉的

當然,也可以直接用 ”!=="運算符判斷

var obj = {x:1};

console.log(obj.x !== undefined);//true

console.log(obj.y !== undefined);//false

console.log(obj.toString !== undefined); //true

3.枚舉屬性

var obj = {x:1,y:2};

for(p in obj){

console.log(p);//x y

console.log(obj.p);// undefined undefined

console.log(obj[p]);//1 2

}

拓展1:

每個對象都有與之相關的原型(prototype)、類(class)、可擴展性(extensible)

要檢測一個對象是否是另一個對象的原型(或處于原型鏈中),可以使用isPrototypeOf()方法

var p = {x:1}; //p原型對象繼承自Object.prototype

var o = Object.create(p); //o對象繼承自p

console.log(p.isPrototypeOf(o));//true

console.log(Object.prototype.isPrototypeOf(o));//true

console.log(Object.prototype.isPrototypeOf(p));//true

當然,isPrototypeOf()方法和instanceof運算符非常類似

instanceof運算符希望它的左操作數是一個對象,右操作數標識對象的類。如果左側的對象是右側類的實例,則表達式返回true,否則返回false

var p = {x:1};

console.log(p instanceof Object);//true

var d = new Date();

console.log(d instanceof Date);//true

console.log(d instanceof Object);//true

console.log(d instanceof Number);//false

拓展2:

對象的類屬性是一個字符串,用以表示對象的類型信息

一般調用toString()方法后返回形如 [object class]的形式

比如

代碼如下:

var obj = {x:1,y:2};

console.log(obj.toString());//[object Object]

所以要想獲取對象的類,就可以通過返回的字符串中找出 “class"字段 使用 slice(8,-1)

比如

function classOf(obj){ // 找出類名

if(obj === null){

return "Null";

}

if(obj === undefined){

return "Undefined";

}

return Object.prototype.toString.call(obj).slice(8,-1);

}

console.log(classOf(1)); //Number

//注意,實際上是這些類型的變量調用toString()方法,而不是通過他們自身直接調用

//console.log(1.toString()); //會報錯

var a = 1;

console.log(Number(1).toString()); //1

console.log(a.toString()); //1

console.log({x:1}.toString()); //[object Object]

console.log(classOf(1)); //Number

console.log(classOf("")); //String

console.log(classOf("str")); //String

console.log(classOf(null)); //Null

console.log(classOf(false)); //Boolean

console.log(classOf({})); //Object

console.log(classOf([])); //Array

console.log(classOf(new Date())); //Date

function f(){}

console.log(classOf(new f())); //Object

更多信息請查看IT技術專欄

更多信息請查看腳本欄目
由于各方面情況的不斷調整與變化,易賢網提供的所有考試信息和咨詢回復僅供參考,敬請考生以權威部門公布的正式信息和咨詢為準!

2026上岸·考公考編培訓報班

  • 報班類型
  • 姓名
  • 手機號
  • 驗證碼
關于我們 | 聯系我們 | 人才招聘 | 網站聲明 | 網站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點 | 投訴建議
工業和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網安備53010202001879號 人力資源服務許可證:(云)人服證字(2023)第0102001523號
云南網警備案專用圖標
聯系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關注公眾號:hfpxwx
咨詢QQ:1093837350(9:00—18:00)版權所有:易賢網
云南網警報警專用圖標
中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久
欧美一级成年大片在线观看| 欧美午夜不卡| 99re在线精品| 国产精品视频999| 欧美精品日韩一本| 久久综合99re88久久爱| 亚洲一区二区三区视频播放| 一区二区三区日韩精品视频| 亚洲深夜福利网站| 亚洲一区欧美激情| 久久精品国产99国产精品澳门| 久久成人精品电影| 欧美精品午夜| 国产欧美日韩精品一区| 国产欧美一区二区三区视频| 亚洲人人精品| 欧美一区二区私人影院日本 | 亚洲视频在线观看免费| 久久精品二区三区| 亚洲欧美久久| 亚洲一级在线观看| 韩国av一区二区| 欧美专区第一页| 欧美一区二区三区四区高清| 精品999在线播放| 亚洲三级电影在线观看| 亚洲女人av| 久久久欧美精品| 欧美日韩三级一区二区| 依依成人综合视频| 妖精视频成人观看www| 新67194成人永久网站| 久久久99免费视频| 欧美日韩在线一二三| 国产一区二区三区久久 | 久久视频这里只有精品| 欧美国产第一页| 国产精品免费看片| 在线免费观看日韩欧美| 国产专区精品视频| 国内精品久久久久伊人av| 激情久久综艺| 国产精品99一区二区| 国产区亚洲区欧美区| 亚洲激情国产| 亚洲一区二区免费视频| 欧美一区二区国产| 亚洲福利在线看| 欧美国产在线观看| 国产精品高潮粉嫩av| 国产精品视频免费| 国内精品美女在线观看| 精品成人在线观看| 午夜免费久久久久| 国产精品大片免费观看| 欧美三级精品| 亚洲福利一区| 久久躁狠狠躁夜夜爽| 国产欧美日韩精品专区| 亚洲一区二区三区乱码aⅴ蜜桃女| 乱中年女人伦av一区二区| 久久激情一区| 国产欧美日韩综合| 午夜电影亚洲| 国产欧美精品国产国产专区| 亚洲一区3d动漫同人无遮挡| 国产精品超碰97尤物18| 亚洲网站在线播放| 国产精品一级在线| 欧美一级专区免费大片| 国产日韩在线一区| 久久久久**毛片大全| 一区在线免费| 久久精视频免费在线久久完整在线看| 欧美性猛片xxxx免费看久爱| 亚洲免费婷婷| 黄色免费成人| 久久尤物视频| 一区二区在线看| 麻豆久久婷婷| 伊人夜夜躁av伊人久久| 老司机免费视频久久| 一区在线免费| 欧美成年人网| 亚洲国产国产亚洲一二三| 99国产精品国产精品毛片| 久久午夜精品| 一本色道久久加勒比88综合| 国产精品三上| 欧美成人免费播放| 亚洲欧美综合国产精品一区| 国产日韩欧美夫妻视频在线观看| 久久久亚洲高清| 日韩系列在线| 国际精品欧美精品| 欧美日韩成人一区| 久久久久久久999| 一本色道久久综合| 国产综合婷婷| 欧美人交a欧美精品| 亚洲欧美日韩国产一区二区三区| 国产日韩精品一区| 欧美人成在线| 久久久国产精品一区二区中文| 亚洲精品裸体| 尤物在线精品| 国产欧美一区二区精品仙草咪| 老司机一区二区| 香蕉乱码成人久久天堂爱免费| 黄色综合网站| 国产精品久久久久一区二区| 欧美好吊妞视频| 免费高清在线一区| 久久久久网址| 欧美一区二区三区啪啪| 一区二区三区高清不卡| 在线观看一区二区视频| 国产精品婷婷午夜在线观看| 欧美三区在线视频| 欧美精品在欧美一区二区少妇| 久久久久在线| 欧美中文字幕视频| 香蕉久久夜色精品国产使用方法| 亚洲精选大片| 亚洲精品久久久久久久久久久| 国产一区二区中文| 国产精品视频yy9299一区| 欧美日韩综合在线免费观看| 欧美高清在线视频观看不卡| 老鸭窝毛片一区二区三区| 久久久人人人| 免费成人av资源网| 免费在线亚洲欧美| 欧美激情成人在线| 欧美日韩一区二区欧美激情| 欧美精品一区二区三区在线看午夜 | 亚洲影院色无极综合| 日韩亚洲一区二区| 在线视频你懂得一区| 亚洲精选视频免费看| 日韩香蕉视频| 亚洲视频一区二区免费在线观看| 一区二区三区欧美视频| 亚洲欧美在线高清| 久久伊人亚洲| 欧美精品在线观看播放| 欧美视频网址| 国产欧美日韩精品a在线观看| 国产日韩欧美a| 激情亚洲成人| 亚洲日本成人网| 一区二区国产精品| 午夜激情综合网| 久久日韩粉嫩一区二区三区| 久久免费视频这里只有精品| 欧美日韩精品一区二区天天拍小说| 欧美三级在线视频| 国产一区二区三区在线播放免费观看| 国产综合网站| 99综合在线| 久久久久久久综合狠狠综合| 欧美高清成人| 国产欧美日韩亚洲| 在线不卡亚洲| 亚洲国产色一区| 一本色道久久综合亚洲精品按摩| 亚洲精品在线视频观看| 亚洲永久免费观看| 久久久人成影片一区二区三区 | 亚洲已满18点击进入久久 | 国产欧美日韩麻豆91| 一区二区三区自拍| 亚洲一区二区3| 快射av在线播放一区| 欧美深夜福利| 91久久综合亚洲鲁鲁五月天| 久久综合久久综合久久| 国产精品劲爆视频| 国产一区欧美| 国内精品久久久久影院薰衣草| 在线播放日韩专区| 亚洲性图久久| 欧美精品福利| 狠狠色狠色综合曰曰| 亚洲一二区在线| 午夜精品福利一区二区蜜股av| 美日韩免费视频| 国产日韩一级二级三级| 欧美日韩国产高清视频| 一区二区视频在线观看| 亚洲一区二区三区视频播放| 欧美成人四级电影| 在线观看国产成人av片| 午夜精品久久一牛影视| 欧美午夜激情小视频| 亚洲九九精品| 欧美精品九九99久久| 亚洲精品123区| 另类av导航| 激情丁香综合|