数组的添加、删除、排序、与字符串之间的转换、截取、查找、遍历操作总结!!!
来源:互联网 发布:c#数组去重的方法 编辑:程序博客网 时间:2024/05/01 07:01
1.添加
(1)插入
> var a=[11,22,33]undefined> a[ 11, 22, 33 ]> a[3]="";a[6]="abc";a[]'abc'> a[ 11, 22, 33, '', , , 'abc' ]
(2)属性length
(3)push()
> a[ 111, 222, 333, 'abc' ]> a.push('ddd')5
(5)unshift(item,item,...):前端插入,返回长度
> a[ 'b', 'c', 'd', 1, 0 ]> a.unshift("new1","new2")7> a[ 'new1', 'new2', 'b', 'c', 'd', 1, 0 ](6)concat(item,item,item):在复制数组的基础上添加项,原数组不变(slice也不影响原数组)
<pre name="code" class="html">> a[ 7, 6, 2, 1, 0 ]> var b=a.concat('aaa','bbb');undefined> b[ 7, 6, 2, 1, 0, 'aaa', 'bbb' ]> a[ 7, 6, 2, 1, 0 ]
(1)delete:数组长度不变,被删除的元素用“”代替
> a[ 11, 22, 33, '', , , 'abc' ]> delete a[0] true> a[ , 22, 33, '', , , 'abc' ]
(2)属性length (经测数组每个项都必须是相同的类型才可行)
> var a=[0,1,2]undefined> a.length3> a.length=22> a[ 0, 1 ]
(3)shift():取得第一项,数组长度减1
> a[ 'aaa', 'b', 'c', 'd', 1, 0 ]> a.shift()'aaa'> a
(4)pop() 返回被删除的值,取得最后一项
(5)splice(),详情见下
> a[ 111, 222, , 'abc', 'ddd' ]> a.pop()'ddd'> a[ 111, 222, , 'abc' ]
3.以数组方式访问字符串
> var c="hello"> c[1]'e'
4.排序
(1)反转 reverse()
> var a=[0,4,6,2];undefined> a.reverse()[ 2, 6, 4, 0 ]
(2)升序:sort()
(3)降序:sort(arg)
> function compare(a,b){return a>b?-1:(a<b?1:0);}undefined> var a=[0,6,8,2,1];undefined> a.sort(compare)[ 8, 6, 2, 1, 0 ]
或着
> function compare(a,b){return b-a;}undefined> a.sort(compare)[ 8, 6, 2, 1, 0 ]
5.转换为字符串:
(1)join()
> a[ 8, 6, 2, 1, 0 ]> a.join("-")'8-6-2-1-0'
(2)toString()和toLocaleString()
> a.toString();'aaa,b,c,d,1,0'> a.toLocaleString();'aaa,b,c,d,1,0'
> var a=[1,2,'aa','cc'];undefined> a.reduce(function(pre,cur,index,array){return pre+cur;});'3aacc'> var b=a.reduce(function(pre,cur){return pre+cur;});undefined> typeof b'string'
6.字符串转换为数组:split()
> var str='hello world';undefined> str.split('l');[ 'he', '', 'o wor', 'd' ]> str.split('');[ 'h', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd' ]> str.split(' ');[ 'hello', 'world' ]
7.截取 slice(start,end) : 返回数组片段,原数组不变
> a[ 8, 6, 2, 1, 0 ]> a.slice(2,4)[ 2, 1 ]> a.slice(2,40)[ 2, 1, 0 ]> a[ 8, 6, 2, 1, 0 ]> a.slice(-40,40)[ 8, 6, 2, 1, 0 ]> a.slice(-1,3)[]> a.slice(0,3)[ 8, 6, 2 ]
> a[ 8, 6, 2, 1, 0 ]> a.splice(0,3,'aaa','b')[ 8, 6, 2 ]> a[ 'aaa', 'b', 1, 0 ]
<p class="p1"></p><p class="p1"><span class="s1">> a.splice(2,0,'c','d')</span></p><p class="p1"><span class="s1">[]</span></p><p class="p1"><span class="s1">> a</span></p><p class="p1"><span class="s1">[ </span><span class="s2">'aaa'</span><span class="s1">, </span><span class="s2">'b'</span><span class="s1">, </span><span class="s2">'c'</span><span class="s1">, </span><span class="s2">'d'</span><span class="s1">, </span><span class="s3">1</span><span class="s1">, </span><span class="s3">0</span><span class="s1"> ]</span></p>
> var a=[1,2,3,4,5,6]undefined> a.indexOf(1)0> a.lastIndexOf(1)0
> var a=[1,2,'aa','cc'];undefined> a.reduce(function(pre,cur,index,array){return pre+cur;});'3aacc'> a.reduce(function(pre,cur){return pre+cur;});'3aacc'
> var a=[1,2,4,4];> a.reduce(function(pre,cur,index,array){return pre+cur;});11
11.迭代,遍历
(1)forEach():没有返回值
(2)every():有返回值,所有项都返回true则为true
(3)some():有返回值,有意向返回true则为true
(4)map():返回每次调用的结果组成的数组
(5)filter():返回为true的项
噗 = = 雷死爹了
0 0
- 数组的添加、删除、排序、与字符串之间的转换、截取、查找、遍历操作总结!!!
- 字符串与数组的转换+字符串截取
- day04,数组的操作,遍历,查找,选择冒泡排序,进制转换,二维数组
- C++ vector的初始化、添加、遍历、插入、删除、查找、排序、释放操作
- Java第四章【流程控制与数组、数组的操作【遍历、排序、查找】】
- 字符串与数组之间的转换
- LINQ 学习笔记-字符串数组与整数数组之间的转换,排序
- ArrayList(数组列表)与ArrayList之间数据的添加与删除操作
- NSArray数组的常用操作(遍历、排序、比较、与字符串的比较)
- NSArray数组的常用操作(遍历、排序、倒序、比较、与字符串的比较)
- 小记(一):字符串与字符串数组之间的转换
- 二叉排序的创建,删除,遍历,查找
- 字符串的截取删除
- 排序,查找,qsort和bsearch的简单总结,scanf字符串截取
- 字符串、PChar与字符数组之间的转换(delphi)
- Delphi字符串、PChar与字符数组之间的转换
- C#下字符串与字节数组之间的相互转换
- 字节数组与十六进制字符串之间的相互转换
- ATL::CImage 使用范例
- Android ListView工作原理完全解析,带你从源码的角度彻底理解
- 调用小程序查看器的2个方法
- C语言部分题目解析
- Linux下Nagios的安装与配置
- 数组的添加、删除、排序、与字符串之间的转换、截取、查找、遍历操作总结!!!
- Android Support 包里究竟有什么
- linux系统连接串口工具打印log
- 盗墓笔记
- SylixOS的BSP开发实例之S3C2416 【第四篇】S3C2416 的 GDB 初始化脚本
- poj3373--Changing Digits(DFS+剪枝///记忆化)
- 【暴力搜索】[HDU 1175]连连看
- leetcode笔记:Remove Duplicates from Sorted Array II
- C++异常处理(转)