JavaScript学习随记——数组二
来源:互联网 发布:java 可视化界面 编辑:程序博客网 时间:2024/06/06 14:29
数组indexOf(arg) 和 lastIndexOf(arg)方法使用
<script type="text/javascript" charset="utf-8">/** * indexOf(arg):返回指定参数在数组中的索引位置(从前往后查,比较是使用 ‘===’,查询到立即返回索引位置),如果没有则返回 -1 * * lastIndexOf(arg):从后往前查arg,如果查询到则立即返回对应的索引值,如果没有则返回 -1 * * 注:数组的索引位置都是从 0 开始索引 */ var arr=[1,734,23,7,90,4,true,12,1,0,23];console.log("【arr】: "+arr);console.log("【arr.indexOf(23)】:"+arr.indexOf(23));console.log("【arr.indexOf(true)】:"+arr.indexOf(true));var arr=[1,2,3,4,5,4,3,2,1];console.log("【arr】: "+arr);console.log("【arr.lastIndexOf(3)】: "+arr.lastIndexOf(3));console.log("【arr.lastIndexOf(10)】: "+arr.lastIndexOf(10));/********************* 【开始】运行结果 ********************【arr】: 1,734,23,7,90,4,true,12,1,0,23【arr.indexOf(23)】:2【arr】: 1,2,3,4,5,4,3,2,1【arr.lastIndexOf(3)】: 6【arr.lastIndexOf(10)】: -1********************* 【结束】运行结果 ********************/</script>
数组every迭代
<script type="text/javascript" charset="utf-8">/** * 数组五个新的迭代方法(ECMA5 数组新特性):every、filter、some、reduce、reduceRight * every:循环迭代并回调every参数中函数,循环迭代函数处理的结果如果都为true则返回true,否则返回false(类似于逻辑关系&&) * * @return boolean */var arr=[87,12,9,5,34,5,0];var result=arr.every(function(item,index,arr){// item:循环迭代到的值// index:循环迭代到的索引位置// arr:循环的数组console.log("item: "+item+" ,index: "+index+", arr: "+arr);return item>3;});console.log("arr: "+arr);console.log("arr.every(): "+result);/********************* 【开始】运行结果 ********************item: 87 ,index: 0, arr: 87,12,9,5,34,5,0item: 12 ,index: 1, arr: 87,12,9,5,34,5,0item: 9 ,index: 2, arr: 87,12,9,5,34,5,0item: 5 ,index: 3, arr: 87,12,9,5,34,5,0item: 34 ,index: 4, arr: 87,12,9,5,34,5,0item: 5 ,index: 5, arr: 87,12,9,5,34,5,0item: 0 ,index: 6, arr: 87,12,9,5,34,5,0arr: 87,12,9,5,34,5,0arr.every(): false********************* 【结束】运行结果 ********************/</script>
数组filter迭代
<script type="text/javascript" charset="utf-8">/** * filter:循环迭代数组中符合条件的数据(返回符合筛选条件的元素,不影响被操作的对象) * * @return [符合筛选条件的元素,符合筛选条件的元素、、、] */var arr=[87,12,9,5,34,5,0];var result=arr.filter(function(item,index,arr){return item>10;});console.log("arr: "+arr);console.log("arr.filter(): "+result);/********************* 【开始】运行结果 ********************arr: 87,12,9,5,34,5,0arr.filter(): 87,12,34********************* 【结束】运行结果 ********************/</script>
数组some迭代
<script type="text/javascript" charset="utf-8">/** * some:循环迭代并运行函数中的回调函数,若回调参函数运行结果含义true则返回true,否则返回false(类似于逻辑关系 || ) * * @return boolean */var arr=[87,12,9,5,34,5,0];var result=arr.some(function(item,index,arr){return item<3;});console.log("arr: "+arr);console.log("arr.some(): "+result);/********************* 【开始】运行结果 ********************arr: 87,12,9,5,34,5,0arr.some(): true********************* 【结束】运行结果 ********************/</script>
数组reduce迭代
<script type="text/javascript" charset="utf-8"> /** * reduce: 从左往右顺序迭代(默认从索引1位置开始顺序迭代) * * @param {Object} pre上一次循环迭代的返回值 * @param {Object} cur 循环迭代当前的值(默认从索引1位置开始顺序迭代) * @param {Object} index 循环迭代处的索引位置 * @param {Object} array 循环迭代的对象 */var arr=[87,12,9,5,34,5,0];var result=arr.reduce(function(pre,cur,index,array){console.log("index:"+index+" , pre:"+pre+" , cur:"+cur+" , array:"+array);return pre+cur;});console.log("result: "+result);/********************* 【开始】运行结果 ********************index:1 , pre:87 , cur:12 , array:87,12,9,5,34,5,0index:2 , pre:99 , cur:9 , array:87,12,9,5,34,5,0index:3 , pre:108 , cur:5 , array:87,12,9,5,34,5,0index:4 , pre:113 , cur:34 , array:87,12,9,5,34,5,0index:5 , pre:147 , cur:5 , array:87,12,9,5,34,5,0index:6 , pre:152 , cur:0 , array:87,12,9,5,34,5,0result: 152********************* 【结束】运行结果 ********************/</script>
数组reduceRight迭代
<script type="text/javascript" charset="utf-8">/** * reduceRight: 从右往左顺序迭代(默认从数组倒数第二个元素位置开始从右往左顺序迭代) * * @param {Object} pre上一次循环迭代的返回值 * @param {Object} cur循环迭代当前的值(默认从数组倒数第二个元素位置开始从右往左顺序迭代) * @param {Object} index循环迭代处的索引位置 * @param {Object} array循环迭代的对象 */var arr=[87,12,9,5,34,5,0];var result=arr.reduceRight(function(pre,cur,index,array){console.log("index:"+index+" , pre:"+pre+" , cur:"+cur+" , array:"+array);return pre+cur;});console.log("result: "+result);/********************* 【开始】运行结果 ********************index:5 , pre:0 , cur:5 , array:87,12,9,5,34,5,0index:4 , pre:5 , cur:34 , array:87,12,9,5,34,5,0index:3 , pre:39 , cur:5 , array:87,12,9,5,34,5,0index:2 , pre:44 , cur:9 , array:87,12,9,5,34,5,0index:1 , pre:53 , cur:12 , array:87,12,9,5,34,5,0index:0 , pre:65 , cur:87 , array:87,12,9,5,34,5,0result: 152********************* 【结束】运行结果 ********************/</script>
1 0
- JavaScript学习随记——数组二
- JavaScript学习随记——数组一
- JavaScript学习随记——对象
- JavaScript学习随记——Function
- JavaScript学习随记——属性类型
- JavaScript学习随记——错误类型
- JavaScript学习随记——面向对象编程(继承)
- hadoop学习随记 二
- 学习随记(二)
- ocp学习随记(二)
- JavaScript学习随记——常见全局对象属性及方法
- 随记数组和javascript的技巧
- 【threejs学习随记(二)】——up属性与lookAt方法解析
- JavaScript学习总结——JavaScript数组
- JavaScript学习总结(二十一)——使用JavaScript的数组实现数据结构中的队列与堆栈
- 学习DatabaseConnectionPool--数据库连接池(随记二)
- JavaScript 学习随记——"=="和"==="及常见元素的真假值
- javascript 随记
- iOS 2D绘图详解(Quartz 2D)之概述
- VMware网络连接三种模式bridged、host-only、NAT
- JSP的9大内置对象及4个作用域
- 选择,冒泡排序,折半查找,插入
- POJ 2739 Sum of Consecutive Prime Numbers(素数打表+素数搜索)
- JavaScript学习随记——数组二
- Android之app引导页(背景图片切换加各个页面动画效果)
- Django 入门Demo
- IAR 高级调试--插件篇
- iOS NSData 和十六进制字符串之间的相互转换
- python画图
- Codeblocks注释快捷键
- 函数递归与栈的实用
- python处理.csv文件