Javascript:为什么我的代码没有任何提示?

Javascript:为什么我的代码没有任何提示?,javascript,math,alert,Javascript,Math,Alert,我写了以下内容: var pages=["[www.facebook.com] Facebook is cool. ","[www.bbc.co.uk] British broadcasting corporation. "]; function findScoreC2(s){ var scores=[]; var percentageScores=[]; var contentsArray=[]; s=s.toLowerCase(); for(i=0;i<page

我写了以下内容:

var pages=["[www.facebook.com] Facebook is cool. ","[www.bbc.co.uk] British broadcasting corporation. "];

function findScoreC2(s){ 
  var scores=[];
  var percentageScores=[];
  var contentsArray=[];
  s=s.toLowerCase();
  for(i=0;i<pages.length; i++){
    contentsArray=pages[i].substring(pages[i].indexOf("]")+1,pages[i].lastIndexOf(" "));
    var lowerCaseContents=(pages[i].substring(pages[i].indexOf("]")+1,pages[i].lastIndexOf(" "))).toLowerCase();
    scores[i] =(lowerCaseContents.split(s)).length-1
  };

  percentageScores=(scores[i] / contentsArray[i].length) * 100;
  var finalArray=[];

  for(i=0;i<percentageScores.length;i++){
    finalArray.push("{score:"+percentageScores[i]+",index:"+i+"}")
  };
  alert(finalArray);
}


findScoreC2("facebook");
var-pages=[“[www.facebook.com]facebook很酷。”,“[www.bbc.co.uk]英国广播公司。”;
函数findScoreC2(s){
var得分=[];
var percentageScores=[];
var contentsArray=[];
s=s.toLowerCase();

for(i=0;i您将
percentageScores
设置为一个数字。然后尝试迭代到其
length
属性,当您执行
percentageScores.length
时,该属性为
未定义的
,因此for循环从不迭代。然后使用空数组发出警报,其
toString
生成空字符串

你可能想要这个:

for(i=0;i<pages.length; i++){
    contentsArray=pages[i].substring(pages[i].indexOf("]")+1,pages[i].lastIndexOf(" "));
    var lowerCaseContents=(pages[i].substring(pages[i].indexOf("]")+1,pages[i].lastIndexOf(" "))).toLowerCase();
    scores[i] =(lowerCaseContents.split(s)).length-1
    percentageScores[i]=(scores[i] / contentsArray[i].length) * 100;
};

用于(i=0;iI无法正确查看代码,可能您需要编辑您的问题,即使我没有登录时看不到。登录后,我能够。我不知道为什么..但出于某种原因,情况就是这样。感谢您的回复。我刚刚尝试了一下,因为我意识到,您在回信时,我写了百分比分数行wa它在for循环之外,所以我更改了代码以包含它,在for循环的最后,将其更改为迭代到scores.length(而不是百分比分数)。现在,它向“{score:undefined,index:0},{score:undefined,index:1}”发出警报,但我看不到问题出在哪里了您添加了[i]当索引到它时的百分比分数?我没有,但是刚刚读了你的回复并这么做了,它就工作了!差不多。现在我得到了“{score:100,index:0}”,这似乎表明它认为contentsArray[0]的值是1,而实际上是3(“Facebook很酷”)?非常感谢你的帮助,我很感激。