Javascript 将数组映射到以奇数元素作为键、以偶数元素作为值的对象

Javascript 将数组映射到以奇数元素作为键、以偶数元素作为值的对象,javascript,arrays,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 rendere

标题应该是不言自明的。如何打开以下阵列:

[
  "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."
]
进入以下数组:

[
    {"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."}
]
解决方案可能很简单,但我想不出一个简单的方法来实现它。我试着制作两个单独的数组,并通过在第一个数组中去掉奇数值,在第二个数组中去掉偶数值,然后再合并它们,来过滤每个数组的元素,但这似乎是一种过分的做法

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


(是的,我知道“准确”的定义…很奇怪)

你可以通过一个简单的
for
循环来实现:

const数据=[
“讨价还价”,
“成交”,
“一致”,
“稳定的;有规律的”,
“准确地”,
“以比通常或预期更便宜的价格购买或出售的物品。”,
“指控”,
“作为所提供服务或所提供货物的价格的需求(金额)。”
];
让结果=[];
对于(设i=0;i您可以这样使用:

const输入=[
“讨价还价”,
“成交”,
“一致”,
“稳定的;有规律的”,
“准确地”,
“以比通常或预期更便宜的价格购买或出售的物品。”,
“指控”,
“作为所提供服务或所提供货物的价格的需求(金额)。”
]
const length=Math.ceil(input.length/2)
const output=Array.from({length},(u,i)=>
({[input[i*2]]:input[i*2+1]})
);
console.log(输出)