我有一個全局對象MyFruits可以有多個屬性。它至少有兩個屬性:蘋果和橘子。我需要找出它是否有比這兩個更多的屬性。javascript測試對象屬性
目前,我對MyFruits進行了字符串處理,創建了一個只包含蘋果和桔子屬性的新對象,並將其串化並比較兩個字符串的長度。事情是這樣的:
var JsonString1 = JSON.stringify(MyFruits);
var test2 = new Object();
test2.Apples= MyFruits.Apples;
test2.Oranges= MyFruits.Oranges;
var JsonString2= JSON.stringify(test2);
alert(JsonString1.length - JsonString2.length);
現在,它最初看起來像它的工作:如果MyFruits不只包含了兩個主要的多個屬性,長度的差異會從0
不同還有的Object.keys(obj).length
方法可以計算一個對象的屬性數量,但它是新的,並且在所有瀏覽器中都不支持,所以我不打算使用它。
這是最好的方法嗎?讓我知道是否有更好的方法。
感謝您的建議。
請參閱:https://github.com/kriskowal/es5-shim – 2012-02-25 22:58:58
您想計算一個對象的屬性數量? – 2012-02-25 23:02:56