Jquery 如何组合这两个数组';s、 第一个数组用于键,第二个数组用于值?

Jquery 如何组合这两个数组';s、 第一个数组用于键,第二个数组用于值?,jquery,Jquery,我有两个阵列: $array1 = array(1,2,3); $array2 = array(dog, cat, fox); 如何组合这两个数组,第一个数组用于键,第二个数组用于值 $array3 = array(1 => dog, 2 => cat, 4 => fox); 在php中,我们有array_combine();但在jQuery中,我似乎找不到一个好方法来实现这一点。对于jQuery,使用循环: var array3 = {}; $.each(array1,

我有两个阵列:

$array1 = array(1,2,3);
$array2 = array(dog, cat, fox);
如何组合这两个数组,第一个数组用于键,第二个数组用于值

$array3 = array(1 => dog, 2 => cat, 4 => fox);

在php中,我们有array_combine();但在jQuery中,我似乎找不到一个好方法来实现这一点。

对于jQuery,使用循环:

var array3 = {};
$.each(array1, function(i) {
    array3[array1[i]] = array2[i];
});

一个简单的
for
循环应该可以很好地实现这一点

var arr1 = [3, 5, 7],       // keys, integers or "integer strings" e.g. "5"
    arr2 = ['a', 'b', 'c']; // values

var arr3 = [], i;

for (i = 0; i < arr1.length; ++i) {
    arr3[arr1[i]] = arr2[i];
}

arr3; // [undefined × 3, "a", undefined × 1, "b", undefined × 1, "c"]
var arr1=[3,5,7],//键、整数或“整数字符串”,例如“5”
arr2=['a','b','c'];//价值观
var arr3=[],i;
对于(i=0;i<1.length;++i){
arr3[arr1[i]=arr2[i];
}
arr3;//[未定义×3,“a”,未定义×1,“b”,未定义×1,“c”]
编辑:如果您使用非整数(例如非
1
2
,…或
'1'
'2'
,…)作为键,那么您想要在JavaScript中创建的不是数组,而是对象
myObj={}
。数组不会抱怨添加这样的键,因为在JavaScript中它继承自Object,但这会被认为是不好的做法,并且很难调试。

var array3={};
var array3 = {};
for (var i = 0; i < array1.length; i++) {
   array3[array1[i]] = array2[i];
}
对于(变量i=0;i
在js中,与php不同,哈希和数组是两种不同的东西

所以,我假设您想要一个对象作为最终结果,而不是数组

var $array1 = array(1,2,3);
var $array2 = array(dog, cat, fox);
var obj = {};

for(var i=0,len=$array1.length; i < len ;i++) {
 obj[$array1[i]] = $array2[i];
}
var$array1=数组(1,2,3);
var$array2=数组(狗、猫、狐狸);
var obj={};
对于(变量i=0,len=$array1.length;i
还有,你看

您会发现许多其他与php函数等价的js