对于循环 javascript

For loops javascript

本文关键字:javascript 循环 于循环      更新时间:2023-09-26

有没有办法在将长度值减少 1 之前将我的 for 循环设置为命中所有string[i].length == length实例?我在添加 while 循环时搞砸了,但我无法安静地得到它。

此脚本旨在根据每个项目的长度从大到小对数组进行排序。唯一的问题是我无法弄清楚如何在不跳过已经检测到的数组项目长度的情况下对其进行排序。

var string = ["hello", "world", "fishing", "before", "all", "test"];
var length = 0;
word = 0;
for (x = 0; x < string.length; x++) {
if (string[x].length > length) {
   var length = string[x].length;
   word = string[x];
}
}
string1 = [];
for (i = 0; i < string.length; i++) {
if (string[i].length == length) {
  length = string[i].length - 1;
  string1.push(string[i]);
  i = 0;
}
}
console.log(string1);    

为什么不使用 Array.sort()

var string = ["hello", "world", "fishing", "before", "all", "test"];
string.sort(function(o1, o2){
    return o1.length - o2.length;
})
console.log(string)

演示:小提琴

手动排序:小提琴

为什么不使用javascript的内置函数sort http://www.w3schools.com/jsref/jsref_sort.asp

你可以sortfunction传递它 - 用它来比较字符串的长度,让javascript为你进行排序。