关于字符串的比较问题 书上说的数值5虽然小于10 但在进行字符串比较时,"10" 则位于"5"的前面也就是说是用js中的sort()方法排序 0,1,5,10,15的结果是0,1,10,15,5问一下这个关于字符串的排序是怎么排的,有没有什么标准! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 传递排序的比较方法var arr = [0, 1, 10, 15, 5];arr.sort();alert(arr);arr.sort(function(a, b){ return a - b;});alert(arr); // 0,1,5,10,15 http://www.w3school.com.cn/js/jsref_sort.asp楼主参考下里面有段说明如果调用该方法时没有使用参数,将按字母顺序对数组中的元素进行排序,说得更精确点,是按照字符编码的顺序进行排序。要实现这一点,首先应把数组的元素都转换成字符串(如有必要),以便进行比较。 调用数组对象的sort()函数时是需要指定排序函数的,如1楼所示。如果你没有指定排序函数,那么元素就会按照ASCII字符顺序进行升序排列 sort会吧数组的每个元素转换成String类型 所以10和5其实是"10"和"5"至于比较方法 是先会比较第一个字符,如果相等则比较第二个,否则作为整个字符串比较的结果 依次类推"10"和"5"中先比"1"和"5"由于'1'的ascii码小于'5'所以 所以10排在5前面 "5".charCodeAt(0) => 53"10".charCodeAt(0) => 49 小问题,没想通,求教各位。得解即结 style对象 定制网站中上传图片然后调整图片大小功能是如何做的呢? iframe问题(急) 关于onclick事件 弹出页面传值回原页面 比较两种创建原型方法的本质区别? 散分,无聊,郁闷, 高手指教这个怪问题!! dreamweaver中的问题 选中一级复选框,相关二级或父级同时被选 的问题求助 datatable在每一行的第一列塞一个checkbox怎么搞
var arr = [0, 1, 10, 15, 5];
arr.sort();
alert(arr);arr.sort(function(a, b){
return a - b;
});
alert(arr); // 0,1,5,10,15
如果调用该方法时没有使用参数,将按字母顺序对数组中的元素进行排序,说得更精确点,是按照字符编码的顺序进行排序。要实现这一点,首先应把数组的元素都转换成字符串(如有必要),以便进行比较。
至于比较方法 是先会比较第一个字符,如果相等则比较第二个,否则作为整个字符串比较的结果 依次类推
"10"和"5"中先比"1"和"5"由于'1'的ascii码小于'5'所以 所以10排在5前面
"10".charCodeAt(0) => 49