为什么 sum += a.[i] 这句话中提示+=有误?

function orangeFraction(fractions){
  var sum = 0,
      a = fractions.split(' ');
  for (var i = 0; i < a.length; i++) {
       sum += a.[i];
       };
   return 'cocktail contains' +(sum/a.length).toFixed(4)+'% of orange juice';
  }

fractions 参数是一个由空格隔开的多个数字构成的字符串,提示说sum += a.[i]有误 各位大神可以帮下本小白吗?

阅读 5.3k
3 个回答

sum += a.[i];这里有几个问题

  1. 应该是 a[i] 不是 a.[i]

  2. 后面的分号应该用半角的(;)而不是全角的()

  3. a[i] 是字符串,sum += a[i] 之后会得到字符串而不是数,改成 sum += ~~a[i]@xied5531 的回答)

sum是数字
a[i]是字符串

为什么是 a.[i] 呢?不应该是 a[i] 吗

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题