位置:首頁 > 軟件操作教程 > 編程開發(fā) > JavaScript > 問題詳情

JavaScript 歸屬檢測

提問人:劉團圓發(fā)布時間:2020-11-24

■知識點

    in運算符能夠檢測左側(cè)操作數(shù)是否為右側(cè)操作數(shù)的成員。其中左側(cè)操作數(shù)是一個字符串,或者可以轉(zhuǎn)換為字符串的表達式,右側(cè)操作數(shù)是一個對象或數(shù)組。

    instanceof運算符能夠檢測左側(cè)的對象是否為右側(cè)類型的實例。

■實例設計

    下面的代碼使用in運算符檢測屬性a、b、c、valueOf是否為對象o的成員。

var o = {           //定義對象

    a:1,            //定義屬性a

    b:function(){}  //定義方法b

}

console.log("a" in o);               //返回true

console.log("b" in o);               //返回true

console.log("c" in o);                //返回false

console.log("valueOf" in o);      //返回true,繼承Object的原型方法

console.log("constructor" in o);  //返回true,繼承Object的原型屬性

下面的代碼使用instanceof檢測數(shù)組a是否為Array、Object和Function的實例。

var a = new Array();                     //定義數(shù)組

console.log(a instanceof Array);   //返回true

console.log(a instanceof Object);  //返回true,Array是Object的子類

console.log(a instanceof Function);//返回false

提示:

    如果左側(cè)操作數(shù)不是對象,或者右側(cè)操作數(shù)不是類型函數(shù),則返回false。如果右側(cè)操作數(shù)不是復合型對象,則將返回false。

繼續(xù)查找其他問題的答案?

相關(guān)視頻回答
回復(0)
返回頂部