【发布时间】:2018-08-18 16:05:54
【问题描述】:
我想创建一个以字符串为参数并提取最长单词的函数。如果有多个相同长度(最大)的单词,则提取第一个。 (顺便说一句,该函数忽略了数字和标点符号)。无论如何,这是代码:
function extractLongest(testString){
var lenArr = [];
var finalResult = "";
window.onload = function(){
testString = testString.replace(/[^a-z " "]/gi, '');
testString = testString.split(" ");
for (var counter = 0; counter < testString.length; counter++){
lenArr[counter] = parseInt(testString[counter].length);
}
lenArr = lenArr.sort();
for (var counterTwo = 0; counterTwo < testString.length; counterTwo++){
if(parseInt(testString[counterTwo].length) == Math.max(...lenArr)){
finalResult = testString[counterTwo];
break;
}
}
}
return finalResult;
}
问题是它总是返回“字符串”(变量的类型,而不是它的值。)
【问题讨论】:
-
你的最后一段除了 (a) 让你的问题被可能有帮助的人忽略,(b) 激怒任何阅读它的人,(c) 让你投反对票(我没有) .我可以建议你删除它,而是礼貌地声明你已经研究过。此外,您的问题不包含minimal reproducible example - 这也可能使您投反对票。一个 mcve 将包含一个示例字符串数组,以及所需输出的明确指示。
-
您应该考虑编辑问题以消除人们回答您该死问题的需求。这不是要求人们捐出时间来帮助你的好方法。
标签: javascript arrays json string