第六节 Node数组
来源:互联网 发布:网络批发平台有哪些 编辑:程序博客网 时间:2024/06/04 01:38
一.数组的初始化
1.构造方法
var arr = new Array();
var arr = Array();
var arr = Array(1,2,3,4);
2.字面量方法
var arr = [];
var arr = [1,2,3];
3.检查一个变量是否为数组
instanceof 操作符
Array.isArray();方法
二.数组的转换
1.将对象的键值转换为数组:Object.keys()
2.String类型转换为数组:split()
3.将数组转换成String()类型:
toString()
join()
4.数组排序
sort()
reverse()
sort()与reverse()是按照字符串的方式进行比较的,不是按照数字的值.都会改变元数组
> var arr = new Array();undefined> var obj = {a:1,b:2,c:3,d:4}undefined> obj{ a: 1, b: 2, c: 3, d: 4 }> Object.keys(obj)//将对象的键值转换为数组[ 'a', 'b', 'c', 'd' ]> Object.keys(obj).length//数组的个数4> var str = 'mingming is big pig';undefined> str.split(' ');//分割字符串为数组[ 'mingming', 'is', 'big', 'pig' ]> var arr = Object.keys(obj);undefined> arr[ 'a', 'b', 'c', 'd' ]> arr.toString();//默认是按照","把数组中的值连接成字符串> 'a,b,c,d'> arr.join();//默认是按照","把数组中的值连接成字符串'a,b,c,d'> arr.join(' ')//默认是按照" "把数组中的值连接成字符串'a b c d'> var arr = [4,1,3,2,56,34,22,678];undefined> arr.sort();//按照字符串的方式进行比较,从小到大[ 1, 2, 22, 3, 34, 4, 56, 678 ]> arr.reverse();//按照字符串的方式进行比较,从大到小[ 678, 56, 4, 34, 3, 22, 2, 1 ]
var arr = [1,3,21,34,13,56];//自定义排序的方法function cmab(a,b){ if(a>b){ return 1; }else if(a<b){ return -1; }else if(a == b){ return 0; }}arr.sort(cmab);console.log(arr);
三.数组的头尾操作
1.向数组的末尾插入一个或多个成员:push()
返回操作后数组的成员个数
2.删除数组最后一个成员:pop()
返回被删除的成员
3.向数组的头部插入一个或多个成员:unshift()
返回操作后数组的成员个数
4.删除数组第一个成员:shift()
返回被删除的成员
> var arr = [1,2,3];> arr.push('keke','zhangshisan',false);6> arr.pop();false> arr.pop();'zhangshisan'> arr.unshift('xiaoxiao');5> arr.shift();'xiaoxiao'
四.其他操作
1.concat():数组连接
不改变被连接的原数组,返回一个新的数组
2.slice():从数组中取出一部分
3.splice():用于在数组中进行删除,插入和替换操作,返回删除成员组成的新数组.
> var arr = [1,2,3];undefined> var brr = ['mingming','xiaoxiao'];undefined> arr.concat(brr);[ 1, 2, 3, 'mingming', 'xiaoxiao' ]> arr[ 1, 2, 3 ]> brr[ 'mingming', 'xiaoxiao' ]> arr.splice(1,1);[ 2 ]> arr[ 1, 3 ]> arr.splice(1,0,'mingming',false);[]> arr[ 1, 'mingming', false, 3 ]>
4.数组的迭代和遍历的方法:
every()/some()/forEach()/filter()/map()
传入函数作为参数,然后再遍历整个数组
1).every():传入的函数,如果成员在函数执行每个值都返回ture,那么every()就返回ture
2).some():只要有一个成员在函数执行中返回ture,some()就返回ture
3)forEach():没有返回值,用于循环遍历,单纯执行函数操作.
4)filter():会将所有在函数执行中返回ture的成员,组成一个新的数组,并返回.
5map():将函数处理后的结果返回
var arr = [1,2,3,45,45,32,76];//everyvar e = arr.every(function(m){ return m >10;});console.log(e);//falsevar s = arr.some(function(m){ return m >10;});console.log(s);//truevar f = arr.filter(function(m){ return m>10;});console.log(f);//[45,45,32,76]var m =arr.map(function(m){ return m+10;});console.log(m);//[ 11, 12, 13, 55, 55, 42, 86 ]
5.数组的归纳方法
reduce()/reduceRight()
var arr = [1,2,3,4];var r = arr.reduce(function(prev,cur,index,arr){ console.log('prev,cur,index,arr',prev,cur,index,arr); return prev+cur;});console.log(r);
prev,cur,index,arr 1 2 1 [ 1, 2, 3, 4 ]prev,cur,index,arr 3 3 2 [ 1, 2, 3, 4 ]prev,cur,index,arr 6 4 3 [ 1, 2, 3, 4 ]10
0 0
- 第六节 Node数组
- 第六节 数组与指针
- 第六章 “另类”数组
- 第六章 “另类”数组
- 第六章 “另类”数组
- 第六章 数组
- 第六章数组总结
- 第六章 “另类”数组
- 第六章 数组
- 第六章 数组
- java 第六天 数组
- 第六章 数组
- 第六周--队列数组
- 第六章 数组
- 第六届蓝桥杯九数组分数
- 不完全node实践教程-第六发
- PHP学习第六节----数组的基础使用
- node.js 数组
- 硬盘基本知识
- tomcat服务器更改默认访问目录
- RMAN-06564错误的原因及解决办法
- Kafka:Producer Config 配置
- Ubuntu通过conda搭建Python3.5环境
- 第六节 Node数组
- 十二周OJ利用参数宏进行角度与弧度转换
- Json实践(一):fastjson和gson简单效率测试
- Pollutant Control_usaco 4.4_网络流
- 二、yum 入门
- 关于HTML头部信息的测试
- 搜索功能开发大致流程
- Linux动态库的生成与使用指南
- nginx 源码分析 进程模型