以编程方式在javascript中创建以下变量?

use*_*186 1 javascript jquery

我需要重新构建我的数据,以便它适合另一段代码.我需要将我的数据(名称,值对)转换为以下结构,以便正确处理它.使用JQuery我该怎么办?

{items: [
{value: "21", name: "Mick Jagger"},
{value: "43", name: "Johnny Storm"},
{value: "46", name: "Richard Hatch"},
{value: "54", name: "Kelly Slater"},
{value: "55", name: "Rudy Hamilton"},
{value: "79", name: "Michael Jordan"}
]};
Run Code Online (Sandbox Code Playgroud)

现在我有一个$.each循环,它给每个名字,价值对提供了但我不知道我是如何得到那个确切的结构.

mea*_*gar 7

为什么要使用jQuery?用javascript做吧.

以下假设您的源是一个以values属性命名的对象,而不是具有数字索引的数组:

var output = { items: [] };

for (key in values) {
  if (values.hasOwnProperty(key)) {
    output.items.push({ value : values[key], name: key });
  }
}
Run Code Online (Sandbox Code Playgroud)

  • 请注意,您不应该使用for(in)迭代数组,因为它将包含数组对象的所有属性!请使用普通的for循环. (3认同)