JavaScript学习随记——数组二
数组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>
JavaScript学习随记——数组二相关推荐
- JavaScript学习随记——数组一
数组的创建及length属性 <script type="text/javascript" charset="utf-8">// 数组创建方式一,此 ...
- JavaScript学习笔记之数组(二)
JavaScript学习笔记之数组(二) 1.['1','2','3'].map(parseInt) 输出什么,为什么? ['1','2','3'].map(parseInt)//[1,NaN,NaN ...
- JavaScript学习(六十二)—解析选项和序列化选项
JavaScript学习(六十二)-解析选项和序列化选项 一.解析选项 格式:JSON.parse(参数1,参数2); 参数说明 参数1:表示要转换为JS对象的json字符串 参数2:表示将json转 ...
- JavaScript学习(八十二)—JavaScript的组成
JavaScript学习(八十二)-JavaScript的组成 一.ECMAScript ECMAScript是由ECMA国际(原欧洲计算机制造商协会)进行标准化的一门编程语言,这种语言在万维网上应用 ...
- JavaScript学习(七十二)—严格模式
JavaScript学习(七十二)-严格模式 JavaScript除了提供正常模式外,还提供了严格模式,ES5的严格模式是采用具有限制性JavaScript变体的一种方式,即在严格条件下运行JS代码, ...
- JavaScript学习(五十二)—继承、call方法和apply方法
JavaScript学习(五十二)-继承.call方法和apply方法 学习内容 一.继承 二.call方法 三.apply方法 一.继承 所谓继承就是两个构造方法建立起来的某种联系,通过某种联系,可 ...
- JavaScript学习(四十二)—利用工厂模式创建对象以及工厂模式创建对象的不足
JavaScript学习(四十二)-利用工厂模式创建对象以及工厂模式创建对象的不足 一.利用工厂模式创建对象 工厂模式是JavaScript中的一种设计模式,它的作用是批量创建具有同种属性的对象. 格 ...
- JavaScript学习(三十二)— Keycode常用键位码对照表
JavaScript学习(三十二)- Keycode常用键位码对照表 (一).字母和数字键的键码值(keyCode) (二).控制键键码值(keyCode) (三).多媒体键码值(keyCode)
- JavaScript学习 第二课(二)
JavaScript学习 第二课(二) 一.Math对象: 该对象的作用是用来处理数学运算符的,该对象不需要手动创建,因为它是window对象的一个属性,当页面加载完毕后,后台就是自动创建Math对象 ...
最新文章
- (如何从一个列表中随机抽样)np.random.choice(),random.sample()
- WCF服务创建与使用(双工模式)
- python小实验(1):字符串处理
- Paas是什么——Go语言相关学习笔记
- 交换机MAC地址学习和转发数据帧的原理
- 知识管理在客户关系管理中的应用领域
- R语言在金融中的运用一
- 使用javascript实现在页面打印的效果的三种方式
- PyTorch:模型训练-分布式训练
- Java的对象和类 以学生管理系统为例
- 全球降雨、气温、干旱指数等数据集
- ArcGIS按属性选择多个地类
- Python爬虫入门之查询ip地址
- NLP文本分类--词向量
- 比较好的Java 网站
- KBEngine warring项目源码阅读(二) 登录和baseapp的负载均衡
- 程序员该如何把 Windows 系统打造的跟 Mac 一样牛逼?
- Web前端:前端开发人员是做什么的?
- java中jframe是什么_java中JFrame是什么
- 2020年白领年终奖报告来了,平均值为7826元
热门文章
- 微信分享朋友圈固定缩略图 php,微信转发或分享朋友圈带缩略图、标题和描述的实现方法...
- sata修改为ahci后系统无法启动_固态重装系统
- 7个顶级资源网站,不知道就很可惜
- matlab 无向拓扑图,无向图绘画树状拓扑图算法
- 以太网例程_开关量转以太网的应用
- c语言程序整数四则运算,c语言中三个整数随机的四则运算
- PHP后台处理jQuery Ajax跨域请求问题 — xx was not called解决办法
- cf1207解题报告
- Python API简单验证
- 关于代码手写UI,xib和StoryBoard