ES6物件型別判斷

2021-10-07 16:40:35 字數 1131 閱讀 1173

var arr=[,,12];

console.log( typeof arr)

console.log( typeof arr=='object')

//typeof的乙個不好的地方就是它會把array還有使用者自定義函式都返回為object

console.log(arr.constructor.name)

console.log(arr.constructor.name==array)

console.log(arr.constructor.name=='array')

//列印構造函式指標

console.log(a.constructor)

function array() 

//列印array函式

console.log(array)

function array() 

//兩個完全一致的函式作比較

console.log(a.constructor==array)

true

console.log( arr instanceof array)

//利用typeof和constructor進行嚴格判斷

console.log((typeof arr=="object") && (arr.constructor==array))

console.log((typeof arr=="object") && (arr.constructor.name=='array'))

console.log(object.prototype.tostring.call(arr));

//封裝改進後的函式

console.log(type(arr));

var class2type = {},     //用於記錄[object class]樣式  

objs = "boolean number string function array date regexp null undefined".split(" ");  

for (var i = 0, l = objs.length; i < l; i++)   

function type(obj)

重走es6之es6物件

看到這裡突然就想到,你有物件嗎?我沒有 哭的超大聲 es6中規定可以直接在物件中寫入變數和函式作為物件的屬性和方法,此時屬性名為變數名,屬性值為變數的值。物件的簡寫在專案中使用頻率極其高。let name zhangsan let age 18let obj console.log obj 結果為 ...

ES6 物件擴充套件

es6 允許直接寫入變數和函式,作為物件的屬性和方法 var key1 1 var bj var bz 方法的簡寫 var ob fn2 表示式還可以用於定義方法名。var lastword last word var a a first word hello a lastword world a ...

ES6物件擴充套件

es6允許直接寫入變數和函式,作為屬性名和方法 var a b var c c 如果屬性值與屬性名一樣,我們值寫屬性名就可以 方法簡寫 add add function 定義物件屬性有兩種方法 obj.name lijixuan 2obj name lijixuan 我們原本只能用識別符號定義屬性,...