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

javascript的delete運算符知識點總結(jié)

 更新時間:2019年11月19日 15:00:31   投稿:laozhang  
在本篇文章里小編給大家分享的是關(guān)于JS中delete運算符的基礎(chǔ)知識點,有需要的朋友們跟著學習下。

delete是一元操作符,它用來刪除對象屬性或者數(shù)組元素。就像 賦值、遞增、遞減運算符一樣,delete也是具有副作用的,它是用來做刪除操作的,不是用來返回一個值的,例如:

var o = { x: 1, y: 2};     // 定義一個對象
delete o.x;           // 刪除一個屬性 
"x" in o            // => false:這個屬性在對象中不再存在 
var a = [1,2,3];        // 定義一個數(shù)組 
delete a[2];          // 刪除最后一個數(shù)組元素 
2 in a;             // => false:元素2在數(shù)組中已經(jīng)不存在了 
a.length            // => 3:注意,數(shù)組長度并沒有改變,盡管上一行代碼刪除

需要注意的是,刪除屬性或者刪除數(shù)組元素不僅僅是設(shè)置了一個 undefined的值。當刪除一個屬性時,這個屬性將不再存在。讀取一個不 存在的屬性將返回undefined,但是可以通過in運算符(見4.9.3節(jié))來檢測這個屬性是否在對象中存在。

delete希望他的操作數(shù)是一個左值,如果它不是左值,那么delete將 不進行任何操作同時返回true。否則,delete將試圖刪除這個指定的左 值。如果刪除成功,delete將返回true。然而并不是所有的屬性都可刪 除,一些內(nèi)置核心和客戶端屬性是不能刪除的,用戶通過var語句聲明 的變量不能刪除。同樣,通過function語句定義的函數(shù)和函數(shù)參數(shù)也不能刪除。

在ECMAScript 5嚴格模式中,如果delete的操作數(shù)是非法的,比如 變量、函數(shù)或函數(shù)參數(shù),delete操作將拋出一個語法錯誤 (SyntaxError)異常,只有操作數(shù)是一個屬性訪問表達式(見4.4節(jié))的 時候它才會正常工作。在嚴格模式下,delete刪除不可配置的屬性(參 照6.7節(jié))時會拋出一個類型錯誤異常。在非嚴格模式下,這些delete操 作都不會報錯,只是簡單地返回false,以表明操作數(shù)不能執(zhí)行刪除操作。

這里有一些關(guān)于delete運算符的例子:

var o = {x:1, y:2};   //定義一個變量,初始化為對象 
delete o.x;       //刪除一個對象屬性,返回true 
typeof o.x;       //屬性不存在,返回"undefined" 
delete o.x;       //刪除不存在的屬性,返回true 
delete o;        //不能刪除通過var聲明的變量,返回false
//在嚴格模式下,將拋出一個異常 delete 1;        //參數(shù)不是一個左值,返回true 
this.x = 1;       //給全局對象定義一個屬性,這里沒有使用
var delete x;        //試圖刪除它,在非嚴格模式下返回true            
//在嚴格模式下會拋出異常,這時使用"delete this.x"來代替    
x;       //運行時錯誤,沒有定義x

以上就是關(guān)于javascript中delete運算符的基礎(chǔ)知識點,感謝大家的學習和對腳本之家的支持。

相關(guān)文章

  • 深入理解JavaScript系列(49):Function模式(上篇)

    深入理解JavaScript系列(49):Function模式(上篇)

    這篇文章主要介紹了深入理解JavaScript系列(49):Function模式(上篇),本文講解了回調(diào)函數(shù)、配置對象、返回函數(shù)、偏應(yīng)用、Currying等內(nèi)容,需要的朋友可以參考下
    2015-03-03
  • innerText 使用示例

    innerText 使用示例

    在元素間的文本就是通過對象.innerText,下面有個不錯的示例,感興趣的朋友可以參考下
    2014-01-01
  • 實例解析JS布爾對象的toString()方法和valueOf()方法

    實例解析JS布爾對象的toString()方法和valueOf()方法

    這篇文章主要介紹了JS的布爾對象的toString()方法和valueOf()方法,是JavaScript入門學習中的基礎(chǔ)知識,需要的朋友可以參考下
    2015-10-10
  • TypeScrip中泛型的案例詳解

    TypeScrip中泛型的案例詳解

    這篇文章主要介紹了TypeScrip中泛型的案例詳解,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-07-07
  • 基于JavaScript 類的使用詳解

    基于JavaScript 類的使用詳解

    JavaScript里的Class(類),其實是通過Function來實現(xiàn)的。 我們通過字面量或者構(gòu)造函數(shù)來創(chuàng)建對象時,其實都只是給特定的一個對象賦屬性和值。如果我們有多個對象,他們的屬性都一樣只是值不同,那就會寫很多重復(fù)的語句,這時候類就很好用了
    2013-05-05
  • 深入學習JavaScript中的Rest參數(shù)和參數(shù)默認值

    深入學習JavaScript中的Rest參數(shù)和參數(shù)默認值

    這篇文章主要介紹了深入學習JavaScript中的Rest參數(shù)和參數(shù)默認值,是JS入門學習中的基礎(chǔ)知識,需要的朋友可以參考下
    2015-07-07
  • javascript中hasOwnProperty() 方法使用指南

    javascript中hasOwnProperty() 方法使用指南

    這篇文章主要詳細介紹了javascript中hasOwnProperty() 方法使用指南,非常的全面,推薦給有需要的小伙伴參考下。
    2015-03-03
  • JS中this的指向以及call、apply的作用

    JS中this的指向以及call、apply的作用

    本篇文章給大家分享了JS基礎(chǔ)內(nèi)容this指向以及call、apply的相關(guān)知識點內(nèi)容,有興趣的朋友可以學習參考下。
    2018-05-05
  • 詳解js的異步編程技術(shù)的方法

    詳解js的異步編程技術(shù)的方法

    本篇文章主要介紹了詳解js的異步編程技術(shù),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-02-02
  • 詳解javascript中的變量提升和函數(shù)提升

    詳解javascript中的變量提升和函數(shù)提升

    這篇文章主要介紹了詳解javascript中的變量提升和函數(shù)提升的相關(guān)資料,需要的朋友可以參考下
    2018-05-05

最新評論