рони,
спасибо, вник в суть, к массивам больше 10 ячеек v8 применяет какую-то оптимизацию. |
j0hnik,
да, да наплевать на документацию, это Google Chrome и Internet Explorer плохие, раз придерживаются правил ))) |
рони,
IE придерживается и даж поддержка новых стандартов появляется спустя 3-4 года, а так да, хороший арбуз! |
j0hnik,
c return -1 работает везде <script> var str = "12345678901234567890"; for (var i = 0; i < 50; i++) { document.write("<br>"+str.split("").sort(function() { return Math.random() > 0.5 }).sort(function(a,b) { return a > b ? 1 : a < b ? -1 : 0 })) //ожидаемый результат 0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9 } </script> |
рони, да знаю
|
:write: :) или так
<script> var str = "12345678901234567890"; for (var i = 0; i < 50; i++) { document.write("<br>"+str.split("").sort(function() { return Math.random() > 0.5 }).sort(function(a,b) { return a > b || -(a < b) })) //ожидаемый результат 0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9 } </script> |
рони,
а почему бы не так тогда (7-я строка)?)) return a > b || -1 |
:lol: или так
<script> var str = "12345678901234567890"; for (var i = 0; i < 50; i++) { document.write("<br>"+str.split("").sort(function() { return Math.random() > 0.5 }).sort(function(a,b) { return a.localeCompare(b,"ru") })) //ожидаемый результат 0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9 } </script> |
Цитата:
|
а зачем? Поменяются местами 5 и 5, это же не ошибка
|
Часовой пояс GMT +3, время: 21:51. |