美文网首页JavaScript学习笔记
Javascript中sort()的漏洞

Javascript中sort()的漏洞

作者: 小人物的秘密花园 | 来源:发表于2017-02-21 14:13 被阅读7次

语法

arrayObject.sort(compare);

参数compare,可选;

设置compare排序规则,则返回符合规则的新数组;

例子:将元素按升序排序

arr.sort(function(a, b) {

if (a > b) {

return 1;

} else if (a < b) {

return -1;

} else {

return 0;

}

});

降序排序

arr.sort(function(a, b) {});

if (a > b) {

return -1;

} else if (a < b) {

return 1;

} else {

return 0;

}

未设置compare排序规则,默认先将数组元素转换为字符,再按找字符编码进行排序;

结果

图1

返回值

返回对数组的引用;

数组的排序是在原数组的基础上进行的,没有生成副本数组;--改变了元素组

Note:

在对数字类型的数组进行排序时,要制定排序规则,避免出现sort()在默认情况下将数组中的元素转换为String后,在按照字符编码进行排序的情况。(参照图1)

相关文章

网友评论

    本文标题:Javascript中sort()的漏洞

    本文链接:https://www.haomeiwen.com/subject/mkcuwttx.html