将数组映射到具有奇数元素作为键的对象,将偶数元素映射为值

Tre*_*cos 0 javascript arrays

标题应该是非常自我解释的.如何打开以下数组:

[
  "Bargain",
  "deal",
  "Consistent",
  "Steady; regular",
  "Accurately",
  "a thing bought or offered for sale much more cheaply than is usual or expected.",
  "Charge",
  "demand (an amount) as a price for a service rendered or goods supplied."
]
Run Code Online (Sandbox Code Playgroud)

进入下面的数组:

[
    {"Bargain": "deal"},
    {"Consistent": "Steady; regular"},
    {"Accurately": "a thing bought or offered for sale much more cheaply than is usual or expected."},
    {"Charge": "demand (an amount) as a price for a service rendered or goods supplied."}
]
Run Code Online (Sandbox Code Playgroud)

解决方案可能很简单,但我无法找到实现它的简单方法.我尝试制作2个独立的数组,并通过取出第一个中的奇数值和第二个中的偶数值来过滤每个数组的元素,之后将它们合并,但这看起来像是一种过度杀伤力.

有没有一种简单的方法来实现它?

(是的,我知道'准确'的定义是......很奇怪)

Tak*_*aki 6

你可以用一个简单的for循环来做到这一点:

const data = [
  "Bargain",
  "deal",
  "Consistent",
  "Steady; regular",
  "Accurately",
  "a thing bought or offered for sale much more cheaply than is usual or expected.",
  "Charge",
  "demand (an amount) as a price for a service rendered or goods supplied."
];

let result = [];

for (let i = 0; i < data.length; i += 2) {
  result.push({
    [data[i]]: data[i + 1]
  });
}

console.log(result);
Run Code Online (Sandbox Code Playgroud)