js数组操作方法学习
来源:互联网 发布:哈尔滨php在哪找工作 编辑:程序博客网 时间:2024/05/16 01:45
concat方法
<!DOCTYPE html><html lang="en"> <head> <meta charset="utf-8"> <title>concat</title> </head> <body> <script type="text/javascript"> /* 在没有给concat方法传递参数的情况下,concat方法会复制当前数组并返回副本 如果传递一或多个数组,则会将这每一项都添加到结果数组中 */ var color=["red","blue","green"]; console.log(color.concat());// ["red", "blue", "green"] var color2=color.concat("yellow",["heihei","hahha"]); console.log(color2);//["red", "blue", "green", "yellow", "heihei", "hahha"] </script> </body></html>
slice方法
<!DOCTYPE html><html lang="en"> <head> <meta charset="utf-8"> <title>slice方法</title> </head> <body> <script type="text/javascript"> var color=["red", "blue", "green", "yellow", "heihei", "hahha"]; //如果只有一个参数,则返回从指定位置开始到当前数组末尾的所有项 var color2=color.slice(1); console.log(color2);// ["blue", "green", "yellow", "heihei", "hahha"] var color3=color.slice(1,4);//包含头不包含尾 console.log(color3);//["blue", "green", "yellow"] </script> </body></html>
splice方法
<!DOCTYPE html><html lang="en"> <head> <meta charset="utf-8"> <title>splice方法</title> </head> <body> <script type="text/javascript"> /* 删除:接收两个参数:要删除的第一项的位置和要删除的项数 插入:接收3个参数:起始位置、要删除的项数,要插入的项 替换:三个参数:起始位置、要删除的项、要插入的项 splice方法始终会返回一个数组,数组中包含从原始数组中删除的项 */ var color=["red", "blue", "green", "yellow", "heihei", "hahha"]; //删除 var color1=color.splice(1,2); console.log(color1);// ["blue", "green"] console.log(color);//["red", "yellow", "heihei", "hahha"] //插入 var color2=color.splice(1,0,"hehe","xiaxia"); console.log(color2);// [] 返回空数组表示没有删除 console.log(color);// ["red", "hehe", "xiaxia", "yellow", "heihei", "hahha"] //替换 var color3=color.splice(1,1,"purple"); console.log(color3);// ["hehe"] console.log(color);// ["red", "purple", "xiaxia", "yellow", "heihei", "hahha"] </script> </body></html>
位置方法indexOf和lastIndexOf
<!DOCTYPE html><html lang="en"> <head> <meta charset="utf-8"> <title>位置方法</title> </head> <body> <script type="text/javascript"> /* indexOf和lastIndexOf 这两个方法都可以接收两个参数:要查找的项和查找的位置 这两个方法都返回查找项所在的位置,找不到则返回-1 indexOf是从前往后查找,lastIndexOf正好相反 可以利用indexOf方法来实现数组去重 */ var arr=[1,2,2,4,1,3,5,4]; function unique(msg){ var res=[]; for(var i=0;i<msg.length;i++){ if(res.indexOf(msg[i])==-1){ res.push(msg[i]); } } return res; } console.log(unique(arr));// [1, 2, 4, 3, 5] console.log(arr.indexOf(4));//3 console.log(arr.indexOf(4,4));//7 console.log(arr.lastIndexOf(4));//7 console.log(arr.lastIndexOf(4,6));//3 </script> </body></html>
迭代方法
<!DOCTYPE html><html lang="en"> <head> <meta charset="utf-8"> <title>some和every方法</title> </head> <body> <script type="text/javascript"> //some方法对数组中每一项运行给定函数,如果该函数对任意一项返回true,则返回true //every方法对数组中每一项运行给定函数,如果该函数对所有项返回true,则返回true var arr=[1,2,3,4,5,4,3,2,1]; var res=arr.some(function(item,index,array){ return item>3; }); var res1=arr.every(function(item,index,array){ return item>3; }); console.log(res);//true console.log(res1);//false </script> </body></html>
<!DOCTYPE html><html lang="en"> <head> <meta charset="utf-8"> <title>迭代方法forEach</title> </head> <body> <script type="text/javascript"> /* 迭代方法都可以接收两个参数:要在每一项上运行的函数和函数运行的作用域对象 迭代方法都不会修改原始数组中的值 */ //forEach方法 对数组中的每一项运行传入的函数,没有返回值 var arr=[1,2,3,4,5,4,3,2,1]; var res=[]; arr.forEach(function(item,index,array){ item++; res.push(item); }); console.log(res);//[2, 3, 4, 5, 6, 5, 4, 3, 2] </script> </body></html>
<!DOCTYPE html><html lang="en"> <head> <meta charset="utf-8"> <title>filter方法</title> </head> <body> <script type="text/javascript"> //filter方法对数组中的每一项运行给定函数,返回该函数会返回true的项组成的数组 var arr=[1,2,3,4,5,4,3,2,1]; var res=arr.filter(function(item,index,array){ return item>3; }); console.log(res);// [4, 5, 4] </script> </body></html>
<!DOCTYPE html><html lang="en"> <head> <meta charset="utf-8"> <title>map方法</title> </head> <body> <script type="text/javascript"> //map方法返回一个数组,这个数组是在原始数组的对应项上运行传入函数的结果 var arr=[1,2,3,4,5,4,3,2,1]; var res=arr.map(function(item,index,array){ return item*2; }); console.log(res);// [2, 4, 6, 8, 10, 8, 6, 4, 2] </script> </body></html>
数组归并方法
<!DOCTYPE html><html lang="en"> <head> <meta charset="utf-8"> <title>归并方法</title> </head> <body> <script type="text/javascript"> /* reduce()和reduceRight(),这两个方法都会迭代数组中的所有项,然后构建一个最终返回的值 reduce()方法从数组的第一项开始,逐个遍历到最后,reduceRight()从数组的最后一项开始,向前遍历到第一项 折两个方法的函数都接受四个参数:前一个值、当前值、项的索引和数组对象 */ var arr=[1,2,3,4,5]; var res=arr.reduce(function(prev,cur,index,array){ return prev+cur; }); var res1=arr.reduceRight(function(prev,cur,index,array){ return prev+cur; }); console.log("reduce:"+res);//15 console.log("reduceRight:"+res1);//15 </script> </body></html>
0 0
- js数组操作方法学习
- JS数组的操作方法
- JS数组操作方法汇总
- JS数组操作方法
- js数组操作方法总结
- JS数组的操作方法
- js数组操作方法总结
- 前端web学习--js中数组的操作方法
- js 数组对象的操作方法
- js 数组对象的操作方法
- js 数组对象的操作方法
- js中数组的操作方法
- js 数组对象的操作方法
- js数组常用的操作方法
- js中数组的操作方法
- JS 数组的各种操作方法
- js常用数组操作方法简明总结
- js数组操作方法concat()、slice()、splice()
- 【bzoj1610】[Usaco2008 Feb]Line连线游戏 计算几何基础
- MFC图像控件的鼠标消息响应函数
- 男人的苦女人不清楚
- Java----AWT组件开发和Swing界面编程(一)
- [FAQ10019]HDMI/MHL如何修改手机默认横竖屏显示方式
- js数组操作方法学习
- protractor设置cookie登录
- 注解
- 使用runtime给属性批量初始化赋值
- iOS海哥开发笔记 (海哥原创,CALayer简介 以及基本使用)
- 【leetcode】第8题:String to Integer(atoi)
- 线程间通信
- Android studio中如何设置与eclipse中相同的快捷键
- FAQ11755]92 KK版本出现亮点/横线显示异常问题