0

我有两个 javascript 对象

var category = new Object();

我将一些属性添加到对象中

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

我有另一个包含 id、类别值和其他一些属性的对象

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# 中实现了同样的效果,任何前进的提示将不胜感激。

4

2 回答 2

4

你可以这样做:

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

    combinedResult[id] = tempObj;
});

这是Fiddle示例。

于 2013-06-05T07:36:29.273 回答
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...
于 2013-06-05T07:46:10.587 回答