我找不到与PHP array_keys()
/ array_values()
对应的JavaScript。
对于不熟悉PHP的人,给出了以下JavaScript散列:
var myHash = {"apples": 3, "oranges": 4, "bananas": 42}
如何获取键数组,即,
["apples", "oranges", "bananas"]
同样的问题也适用于这些值,即
[3, 4, 42]
可以使用jQuery。
发布于 2012-05-02 21:53:24
var a = {"apples": 3, "oranges": 4, "bananas": 42};
var array_keys = new Array();
var array_values = new Array();
for (var key in a) {
array_keys.push(key);
array_values.push(a[key]);
}
alert(array_keys);
alert(array_values);
发布于 2014-01-17 10:39:53
第二个答案(在撰写本文时)给出了:
var values = keys.map(function(v) { return myHash[v]; });
但我更喜欢使用jQuery自己的$.map
var values = $.map(myHash, function(v) { return v; });
因为jQuery考虑了跨浏览器的兼容性。另外,它更短:)
无论如何,我总是试着尽可能地发挥作用。一行代码比循环代码更友好。
发布于 2012-05-02 21:54:26
function getKeys(obj){
var keys = [];
for (key in obj) {
if (obj.hasOwnProperty(key)) { keys[keys.length] = key; }
}
return keys;
}
https://stackoverflow.com/questions/10415133
复制相似问题