可能重複:
how to fetch array keys with jQuery?PHP函數array_keys等同於jQuery的
PHP內置函數array_keys(),
相當於jQuery的 有任何內置的功能類似的PHP的jQuery array_keys(),
。
請建議
可能重複:
how to fetch array keys with jQuery?PHP函數array_keys等同於jQuery的
PHP內置函數array_keys(),
相當於jQuery的 有任何內置的功能類似的PHP的jQuery array_keys(),
。
請建議
你必須定義自己的函數來獲得相同的功能。試試這個:
function arrayKeys(input) {
var output = new Array();
var counter = 0;
for (i in input) {
output[counter++] = i;
}
return output;
}
arrayKeys({"one":1, "two":2, "three":3}); // returns ["one","two","three"]
看看PHPJS,一個項目,旨在重現許多PHP函數在香草的JavaScript以最小的依賴。在你的情況下,你想要array_keys
。
不,沒有什麼具體的jQuery爲此。有一個JavaScript方法,但它還沒有得到廣泛支持,但是Object.keys()
因此人們不會將它用於通用項目。我能想到的最好的事情是
var keys = $.map(your_object, function(value, key) {
return key;
});
這是最好的答案,但是Object.keys( )'現在得到廣泛支持,其中包括IE9 + https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/keys – sMyles
你不需要jQuery或任何其他庫 - 這是JavaScript的標準部分。
for(var key in myObject) {
alert(key);
}
這應該足以讓你循環對象。但是,如果你想真正拿到鑰匙到自己的陣列(即把它變成PHP函數的真正的克隆),那麼它相當瑣碎,延長上述:
function array_keys(myObject) {
output = [];
for(var key in myObject) {
output.push(key);
}
return output;
}
注意,也有使用注意事項對於具有您不想包含的屬性或方法(例如核心系統屬性)的對象,但對於您自己創建的簡單對象或JSON字符串而言,這是理想的技術。
(有關注意事項的詳細信息,請參閱http://yuiblog.com/blog/2006/09/26/for-in-intrigue/)
在JavaScript中沒有像關聯數組這樣的東西。對象(對象文字)處理類似的情況。
var keys = [], i = 0;
for(keys[ i++ ] in yourObject);
現在keys
包含所有yourObject
屬性名稱(鍵)。
看看這個:http://stackoverflow.com/questions/1254227/how-to-fetch-array-keys-with-jquery – Josh
順便說一句:Javascript中的數組只能有數字鍵,沒有這樣的事情關聯數組。它只能被一個對象模擬([但有缺陷])(http://blog.kevinchisholm.com/javascript/associative-arrays-in-javascript/) –