【发布时间】:2017-10-07 04:09:38
【问题描述】:
我一直在尝试并尝试不同的方式来跳出框框思考这个问题,但由于某种原因我无法理解。
function sortByLength(array) {
for(var i = 0; i < array.length; i++) {
for(var n = 0; n < array.length; n++) {
array.sort(function(i, n) {
return i.length - n.length;
});
}
}
return array;
}
console.log(sortByLength(["Hello", "Cheese", "Bye"]));
//expecting ["Bye", "Hello", "Cheese"]
我想我想弄清楚:
1. 为什么这是一个无限循环?
2. 为什么不能简单的传入 i 和 n 的循环值,然后比较它们按长度排序?
我能得到的任何线索或帮助将不胜感激。谢谢!
【问题讨论】:
-
我在 Chrome Javascript 控制台中运行它,它运行得非常好。这不是一个无限循环。
-
我在 codepen 中运行它,但它不起作用,因为它被认为是“无限循环”。它也不能作为我的挑战答案。
标签: javascript arrays string function sorting