js--sort()排序方法的使用--(笔记)
情况1:
var arr = [ 'c', 'd', 'a', 'e' ]; //都是字母的情况
arr.sort();
//alert( arr ); //a,c,d,e
情况2:
var arr2 = [ 4,3,5,5,76,2,0,8 ];
arr2.sort(); //还是按照字符串的方法排列
//alert( arr2 ); // 0,2,3,4,5,5,76,8
arr2.sort(function ( a, b ) {
return a - b; // (从小到大排列,原理:如果a-b>0,则a和b互换位置,如果a-b<0;则a和b不换位置{return a-b;是按从小到大排列,return b-a;则是按从大到小排列})
});
//alert(arr2 ) // 0,2,3,4,5,5,8,76
情况3:
var arrWidth = [ '345px', '23px', '10px', '1000px' ]; //这是字母和数字都有的情况
arrWidth.sort(function ( a, b ) {
return parseInt(a) - parseInt(b); //先转变类型比较换位后,a,b本身并没有改变
});
alert( arrWidth ); //10px,23px,345px,1000px
情况4:结合Math.radom()随机排序
var arr = [ 1,2,3,4,5,6,7,8 ];
arr.sort(function ( a, b ) { return Math.random() - 0.5; //Math.random()随机范围0-1(包括0和1)有可能是正值也有可能是负值,这样就是ab交换位置也是随机的 });
alert( arr ); //所以最后排出来的是随机顺序
注:记住用法就够了,深入的机制不用再花更多时间去研究
最新文章
- 解决Xamarin Android墙的问题
- Android - ADB 的使用
- StringBuilder类与String类的区别
- 便宜有好货:Oracle免费的便捷Web应用开发框架
- UIPikerView的属性
- hdu-----(4857)逃生(拓扑排序)
- AngularJS(16)-路由
- ajax 设置Access-Control-Allow-Origin实现跨域访问
- -exec和|xargs
- Uber到底挣钱不挣钱,听听司机怎么说
- 【Demo 0004】Java基础-类封装性
- 面试题2:实现Singleton模式
- 纸上谈兵: 堆 (heap)
- 【提示框】【计时事件】【cookie】
- python全栈开发day71-ajax
- Lambda表达式浅析
- Bioperl 解析blast的输出结果
- ConfigUtil读取配置文件
- hdu1208 dp
- Maven 映像