1

我在向数组添加记录时遇到问题,这就是问题所在:

  if(score(web[i].content, pattern) > 0){
        scoresArray.push({"url:" + web[i].url + ", score:" + score(web[i].content, pattern)});
    }

错误报告:SyntaxError: Unexpected token +

这是这个和平的代码正在读取的数组:

var web = [ {url : "www.lboro.ac.uk", content : "拉夫堡大学提供单学位课程和世界一流的研究。" } , {url : "www.xyz.ac.uk", content : "另一所大学" } , {url : "www", content : "另一所大学" } ];

4

1 回答 1

2

您似乎正在内部构建一根长字符串{}。另一方面,对象字面量的语法是{ key: expression, … },其中key是字符串或标识符。

所以试试这个:

if(score(web[i].content, pattern) > 0) {
    scoresArray.push({
        url: web[i].url,
        score: score(web[i].content, pattern)
    });
}

您可能还想保留score' 的返回值:

var item = web[i];
var itemScore = score(item.content, pattern);

if (itemScore > 0) {
    scoresArray.push({
        url: item.url,
        score: itemScore
    });
}
于 2013-11-09T22:33:12.703 回答