Javascript 如何乘以奇数指数?

Javascript 如何乘以奇数指数?,javascript,indexing,Javascript,Indexing,我的Javascript代码有点问题。我的问题是: 我想写一个函数,输入一个数字表。如果数字位于偶数索引中,则按原样返回。但是,如果位于奇数索引中的数字,则返回值乘以他的索引 例如: 输入: [5,10,15,20,25,30,50,100] 返回: [5,10,15,60,25150,50700] 所以,我的代码: function multiplyNum(numbers) { const multiply = numbers.map(function(number) { f

我的Javascript代码有点问题。我的问题是:

我想写一个函数,输入一个数字表。如果数字位于偶数索引中,则按原样返回。但是,如果位于奇数索引中的数字,则返回值乘以他的索引

例如:

输入:

[5,10,15,20,25,30,50,100]

返回:

[5,10,15,60,25150,50700]


所以,我的代码:

function multiplyNum(numbers) {
  const multiply = numbers.map(function(number) {
      for (let i = 0; i < numbers.length; i++) {
        if (numbers[i] % 2 == 0) {
          return numbers
        }
        if (numbers[i] % 2 !== 0) {
          return numbers
        }
      });
    return multiplyNum
  }
函数多重同步(数字){
常量乘法=数字。映射(函数(数字){
for(设i=0;i
对于循环,您根本不需要
,您可以从映射中获取索引并乘以奇数值:

函数多重同步(数字){
返回编号.map(函数(编号、索引){
返回索引%2?编号*索引:编号;
});
}

console.log(multiplyNum([5,10,15,20,25,30,50,100]);
您根本不需要
循环,您可以从映射中获取索引并将奇数值相乘:

函数多重同步(数字){
返回编号.map(函数(编号、索引){
返回索引%2?编号*索引:编号;
});
}

log(multiplyNum([5,10,15,20,25,30,50,100]);
您可以使用条件运算符作为检查映射

var数组=[5,10,15,20,25,30,50,100],
结果=数组.map((v,i)=>i%2?v*i:v);

console.log(result);
您可以使用条件运算符作为检查映射

var数组=[5,10,15,20,25,30,50,100],
结果=数组.map((v,i)=>i%2?v*i:v);

console.log(result);
我不确定我在你的代码中看到任何地方你在乘法。我只看到你在使用mod运算符。我只是没有看到乘法吗?另外,你在用两种不同的方式比较你的值。一种方式,你在做“双等于检查”,另一种方式,是“三等于检查”。也就是说,你在其中一个中进行身份检查,在另一个中进行平等性检查。看看这个--注意:这并不能解决问题,但一致性是好的。你有不平衡的大括号。你应该返回
multiply
,而不是
multiplyNum
。我不确定你的代码中是否有任何地方出现了multiplyin任何东西。我只看到你使用mod运算符。我只是没有看到乘法吗?还有,你用两种不同的方式比较你的值。一种方式,你在做“双等于检查”,另一种方式,是“三等于检查”。也就是说,你在其中一个中进行身份检查,在另一个中进行平等性检查。注意:这并不能解决问题,但一致性是好的。你有不平衡的大括号。你应该返回
multiply
,而不是
multiplyNum
。实际上,你是在检查数字是否是奇数而不是in谢谢你的干预@naeramarth7,现在修复实际上,你正在检查数字是否是奇数而不是索引。谢谢你的干预@naeramarth7,现在修复