JavaScript中数组的排序、乱序和搜索实现代码
2023-06-13 09:14:31 时间
1.排序:
默认的sort()按字符编码排序的:
复制代码代码如下:
默认的sort()按字符编码排序的:
<scripttype="text/javascript">
<!--
vartestArray=[3,324,5345,6546,134,5654,665];
testArray.sort();
alert(testArray);
//-->
</script>
现在要让它按照数值大小排序:
<scripttype="text/javascript">
<!--
vartestArray=[3,324,5345,6546,134,5654,665];
testArray.sort(function(a,b){returna-b;});
alert(testArray);
//-->
</script>
只要传递一个比较函数给sort就可以了,如果比较函数的值小于0,则表示a必须出现在b前面,否则在b后面。
2.乱序:
让比较函数随机传回-1或1就可以了:
<scripttype="text/javascript">
<!--
vartestArray=[1,2,3,4,5,6,7,8,9,10,22,33,55,77,88,99];
testArray.sort(function(){returnMath.random()>0.5?-1:1;});
alert(testArray);
//-->
</script>
3.搜索:
用sort()来玩搜索还蛮新鲜的,呵呵,看看是怎么玩的吧。
我现在要把数组里含有字母"a"的元素全部找出来,如果没有sort(),似乎只能用遍历了,遍历的效率…那个叫恐怖啊!!具体做法如下:
<scripttype="text/javascript">
<!--
vartestArray=["df","rtr","wy","dafd","dfs","wefa","tyr","rty","rty","ryt","afds","wer","te"];
testArray.sort(function(a,b){returna.indexOf("a")==-1?1:-1;});
alert(testArray);
//-->
</script>
这样就把数组中含有字母"a"的元素全部放到数组前面啦,再经过一些简单的处理,就可以输出搜索结果了。
以上是我总结的三种在javascript中用sort()操作数组的方法,如果你有兴趣,你会发现sort()还有好多妙用呢……
相关文章
- javascript_JavaScript走向成熟
- JavaScript笔记(10) 第一阶段结束
- >JavaScript中几个操作元素对象的函数方法
- JavaScript学习总结(九)——Javascript面向(基于)对象编程详解编程语言
- J2CL:一款将 Java 编译成 JavaScript 的工具详解编程语言
- javascript window获取iframe、iframe获取window、document详解编程语言
- 用javascript打造搜索工具栏
- javascript实现划词标记+划词搜索功能
- 用javascript实现页内搜索的脚本代码
- javascript显示隐藏层比较不错的方法分析
- JavaScript无符号右移运算符
- JavaScript验证浏览器是否支持javascript的方法小结
- javaScript关闭浏览器(不弹出提示框)
- JavaScript注册事件代码
- Javascript中的函数声明与函数表达式(奇技淫巧)
- JavaScript中的变量声明早于赋值分析
- javascript保存文件到本地实现方法
- 利用noesis.Javascript开源组件.Net中执行javascript脚本
- 深入解析JavaScript中的变量作用域
- javascript数组快速打乱重排的方法
- javascript实现微信分享
- JavaScript中伪协议javascript:使用探讨
- Javascript基础教程之JavaScript语法