在實際開發中可能會遇到須要獲取對象的全部屬性,這時你可能會本身來遍歷一遍獲取,其實原生js已經爲咱們提供了一個方法,他就是Object.keys()
,它返回一個數組,就能夠結合forEach
方法遍歷對象。數組
// 1.對象 var a = { a : 123, b : 'asd', c : function() { console.log( 'haha' ); } }; console.log( Object.keys( a ) ); // [ 'a', 'b', 'c' ]
// 2.數組 var b = [ 123, 21, 31 ]; console.log( Object.keys( b ) ); // [ '0', '1', '2' ]
// 3.構造函數 function c() { this.aa = 123; this.bb = 'asdas'; this.cc = function() { } } console.log( Object.keys( c ) ); // []
// 4.實例化對象 var d = new c(); console.log( Object.keys( d ) ); // [ 'aa', 'bb', 'cc' ]
// 5.字符串 var e = 'sdf123'; console.log( Object.keys( e ) ); // [ '0', '1', '2', '3', '4', '5' ]