在javascript中匹配两个数组或对象

时间:2013-06-05 07:09:23

标签: javascript jquery arrays object

我有两个javascript对象

var category = new Object();

我将一些属性添加到对象

category.Hot = "Red";
category.Cold = "Blue";
category.Warm = "Yellow";

我有另一个对象,它包含id,category值和一些其他属性

var categorization = [];

categorization = {"id1 : Hot","id2 : Cold","id3 : Hot","id4 : Warm"},

现在我需要将分类中的所有项目与其类别中的适当颜色进行映射。我需要这样的东西。

var combinedResult = null;

combinedResult.id1 = {'Hot : Red'}
combinedResult.id2 = {'Cold : Blue'}
combinedResult.id3 = {'Hot : Red'}
combinedResult.id4 = {'Warm : Yellow'}

我是javascript的新手,因此可能存在语法错误。我已经在C#中取得了同样的成绩,我们将不胜感激。

2 个答案:

答案 0 :(得分:4)

你可以这样做:

$.each(categorization,function(id, val){
    var tempObj = {};
    tempObj[val] = category[val];

    combinedResult[id] = tempObj;
});

以下是Fiddle示例。

答案 1 :(得分:0)

对于你来说,下面的内容不会更容易吗?

var categorization = [];

categorization.push({"Id" : "Hot","colour":"Red"});
categorization.push({"Id" : "Cold","colour":"Blue"});
categorization.push({"Id" : "Warm","colour":"Yellow"});

然后

categorization[0].Id, categorization[0].colour etc...