參數a和b來自哪個排序函數? 他們是否自動通過?數組排序。爭論來自哪裏?
dir = "asc"
sortArray = new Array("hello", "Link to Google", "zFile", "aFile");
//sort array
if (dir == "asc") {
sortArray.sort(function(a, b) {
return a.toLowerCase() > b.toLowerCase()
});
} else {
sortArray.sort(function(a, b) {
return b.toLowerCase() > a.toLowerCase()
});
}
for (var i = 0; i < sortArray.length; i++) {
console.log(sortArray[i]);
}
'a'和'b'具有數組中每對元素的值。 –
只是你知道,你的代碼是錯誤的。根據「a」是否小於「b」,分揀機應該返回「-1」或「1」,如果它們相等,則返回「0」。你的代碼正在做的是返回'0'或'1'。所以如果腳本比較'X'和'Y',那麼會被告知'Y> X'和'X == Y',這是不合邏輯的,所以結果是未定義的。將'?1:-1;'添加到每個'return'行的末尾。 –