欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JavaScript如何刪除對(duì)象的某個(gè)屬性詳析

 更新時(shí)間:2021年05月10日 10:51:35   作者:大遷世界  
這篇文章主要給大家介紹了關(guān)于JavaScript如何刪除對(duì)象的某個(gè)屬性的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

1、delete

delete是刪除對(duì)象的屬性沒(méi)有任何剩菜,剩下的唯一真正的方法,但它的工作比其“替代”設(shè)置慢100倍 object[key] = undefined

var myObject = {
    "ircEvent": "PRIVMSG",
    "method": "newURI",
    "regex": "^http://.*"
};
delete myObject.regex;

console.log(myObject);

delete 操作符會(huì)從某個(gè)對(duì)象上移除指定屬性。成功刪除的時(shí)候回返回 true,否則返回 false。但是,以下情況需要重點(diǎn)考慮:

如果你試圖刪除的屬性不存在,那么delete將不會(huì)起任何作用,但仍會(huì)返回true

如果對(duì)象的原型鏈上有一個(gè)與待刪除屬性同名的屬性,那么刪除屬性之后,對(duì)象會(huì)使用原型鏈上的那個(gè)屬性(也就是說(shuō),delete操作只會(huì)在自身的屬性上起作用)

任何使用 var 聲明的屬性不能從全局作用域或函數(shù)的作用域中刪除。

這樣的話,delete操作不能刪除任何在全局作用域中的函數(shù)(無(wú)論這個(gè)函數(shù)是來(lái)自于函數(shù)聲明或函數(shù)表達(dá)式)

除了在全局作用域中的函數(shù)不能被刪除,在對(duì)象(object)中的函數(shù)是能夠用delete操作刪除的。

任何用let或const聲明的屬性不能夠從它被聲明的作用域中刪除。

不可設(shè)置的(Non-configurable)屬性不能被移除。這意味著像Math, Array, Object內(nèi)置對(duì)象的屬性以及使用Object.defineProperty()方法設(shè)置為不可設(shè)置的屬性不能被刪除。

2、 obj.field = undefined;

這個(gè)選擇不是這個(gè)問(wèn)題的正確答案!但是,如果你小心使用它,你可以大大加快一些算法。如果您delete在循環(huán)中使用并且在性能方面存在問(wèn)題,請(qǐng)閱讀詳細(xì)解釋

 var obj = {
     field: 1     
 };
 obj.field = undefined;

3、數(shù)組中使用delete

在數(shù)組中,與普通的舊對(duì)象不同,使用delete在表單中留下垃圾,null在數(shù)組中創(chuàng)建一個(gè)“洞”, 而且length不變。

var array = [1, 2, 3, 4];
delete array[2];
/* Expected result --> [1, 2, 4]
 * Actual result   --> [1, 2, null, 4]
 */

4、數(shù)組中使用splice

arrayObject.splice(index,howmany,item1,.....,itemX)

index: 必需。整數(shù),規(guī)定添加/刪除項(xiàng)目的位置,使用負(fù)數(shù)可從數(shù)組結(jié)

    尾處規(guī)定位置。

howmany: 必需。要?jiǎng)h除的項(xiàng)目數(shù)量。如果設(shè)置為 0,則不會(huì)刪除項(xiàng)目。

item1: 可選。向數(shù)組添加的新項(xiàng)目。

var arr = new Array(6)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
arr[3] = "James"
arr[4] = "Adrew"
arr[5] = "Martin"

document.write(arr + "<br />")
arr.splice(2,0,"William")
document.write(arr + "<br />")
/*
*George,John,Thomas,James,Adrew,Martin
*George,John,William,Thomas,James,Adrew,Martin
*/

總結(jié)

到此這篇關(guān)于JavaScript如何刪除對(duì)象的某個(gè)屬性的文章就介紹到這了,更多相關(guān)JavaScript刪除對(duì)象某個(gè)屬性內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 深入理解js 中async 函數(shù)的含義和用法

    深入理解js 中async 函數(shù)的含義和用法

    async 函數(shù)就是隧道盡頭的亮光,很多人認(rèn)為它是異步操作的終極解決方案。接下來(lái)通過(guò)本文給大家分享js 中async 函數(shù)的含義和用法,感興趣的朋友跟隨腳本之家小編一起看看吧
    2018-05-05
  • 自用js開(kāi)發(fā)框架小成 學(xué)習(xí)js的朋友可以看看

    自用js開(kāi)發(fā)框架小成 學(xué)習(xí)js的朋友可以看看

    前段時(shí)間項(xiàng)目需要用到j(luò)s樹(shù),找了好多都不符合項(xiàng)目需求,后來(lái)發(fā)現(xiàn)了梅花雪樹(shù)和js框架,類似C#名稱空間的用法讓我眼前一亮,遂拿來(lái)主義,讀了幾遍代碼后就開(kāi)工了(我是個(gè)急性子呵呵),完成了大部分,最近才找出來(lái)測(cè)試了下。
    2010-11-11
  • js?window.addEventListener?簡(jiǎn)介

    js?window.addEventListener?簡(jiǎn)介

    window.addEventListener是JavaScript中用于添加事件監(jiān)聽(tīng)器的方法,允許在發(fā)生特定事件時(shí)執(zhí)行函數(shù),本文給大家介紹js?window.addEventListener?是什么,感興趣的朋友一起看看吧
    2024-09-09
  • 詳解webpack+ES6+Sass搭建多頁(yè)面應(yīng)用

    詳解webpack+ES6+Sass搭建多頁(yè)面應(yīng)用

    這篇文章主要介紹了webpack+ES6+Sass搭建多頁(yè)面應(yīng)用,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-11-11
  • Javascript中的prototype與繼承

    Javascript中的prototype與繼承

    本文主要介紹了Javascript中的prototype與繼承,具有一定的參考價(jià)值,下面跟著小編一起來(lái)看下吧
    2017-02-02
  • js中函數(shù)調(diào)用的兩種常用方法使用介紹

    js中函數(shù)調(diào)用的兩種常用方法使用介紹

    這篇文章主要介紹了js中函數(shù)調(diào)用的兩種常用方法使用,需要的朋友可以參考下
    2014-07-07
  • JavaScript 中級(jí)筆記 第二章

    JavaScript 中級(jí)筆記 第二章

    對(duì)象是組成JavaScript的基本單元。本章將從JavaScript語(yǔ)言中最重要的幾個(gè)部分開(kāi)始介紹:引用,函數(shù)重載,作用域,閉包和上下文。有了這些知識(shí)后,面向?qū)ο箝_(kāi)發(fā)就將變得簡(jiǎn)單。
    2009-09-09
  • 微信小程序開(kāi)發(fā)(二):頁(yè)面跳轉(zhuǎn)并傳參操作示例

    微信小程序開(kāi)發(fā)(二):頁(yè)面跳轉(zhuǎn)并傳參操作示例

    這篇文章主要介紹了微信小程序開(kāi)發(fā)頁(yè)面跳轉(zhuǎn)并傳參操作,結(jié)合實(shí)例形式詳細(xì)分析了微信小程序頁(yè)面跳轉(zhuǎn)并傳參相關(guān)操作技巧,需要的朋友可以參考下
    2020-06-06
  • JavaScript使用Replace進(jìn)行字符串替換的方法

    JavaScript使用Replace進(jìn)行字符串替換的方法

    這篇文章主要介紹了JavaScript使用Replace進(jìn)行字符串替換的方法,涉及Replace進(jìn)行一次替換與全部替換的技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2015-04-04
  • uniapp表單驗(yàn)證方法詳解

    uniapp表單驗(yàn)證方法詳解

    From表單組件具有數(shù)據(jù)收集、提交數(shù)據(jù)的功能,某種程度上說(shuō)它就是一個(gè)容器,下面這篇文章主要給大家介紹了關(guān)于uniapp表單驗(yàn)證的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-10-10

最新評(píng)論