js数组的一些操作
原文地址:flash很好玩 http://www.cnblogs.com/yuzhongwusan/archive/2008/12/15/1355378.html
arr = new Array(1,2,3,4);// [1,2,3,4]
1。arr.pop(),无参数,删除数组Array的最后一个元素,并返回删除元素的值。若原数组为空,返回undefined. 改变数组长度.
2。arr.shift().无参数,删除原数组第一项,并返回删除元素的值;如果数组为空则返回undefined。改变数组长度
3。arr.push(5,6).向当前数组的添加一个或多个元素,并返回新的数组长度。
arr = [1,2,3,4,5,6];; arr.push(5,6) == 6
4。arr.unshift(-1,0).向当前数组的开头位置插入一个或多个指定的元素,并返回插入后的数组长度。插入顺序item1在item2之前,以此类推
arr = [-1,0,1,2,3,4];;arr.unshift(5,6) == 6
5。arr.concat(5,6).返回一个新数组,是将参数添加到原数组中构成的.
arr = [1,2,3,4];;;;;;;;; arr.concat(5,6) == [1,2,3,4,5,6]
6。arr.splice(start,deleteCount,[,items...]) 从索引start开始,移除deleteCount个元素.还可以在所移除元素的位置上插入一个或多个新的元素(删除的和新插入的数目可以不同)。如果删除个数为零,插入位置是在start的前面。该函数以数组形式返回从当前数组中被移除的元素,删除个数为零则返回空数组。
7。arr.reverse().无参数。将当前数组的元素顺序全部反转,并返回元素顺序反转后的数组。在执行过程中,此函数并不创建新的Array对象,直接在当前数组上进行反转。返回的数组对象就是经过顺序反转后的当前数组本身
arr = [4,3,2,1];;;;;;;;; arr.reverse()==[4,3,2,1];;;;;;;;arr === arr.reverse()//true
8。arr.sort(sortFunction)将当前数组对象的元素按指定顺序进行排序,并返回排序后的数组。数组在原数组上进行排序,不生成副本【arr===arr.sort()】.
如果省略sortFunction参数,元素将按ASCII字符顺序的升序进行排列。
关于sortFunction的说明:参考文章 http://www.cnblogs.com/longze/archive/2012/11/27/2791230.html
例一: <script type="text/javascript">
var arrSimple2=new Array(1,8,7,6);
arrSimple2.sort(function(a,b){
return b-a 或者 return a-b});//前者降序,后者升序
document.writeln(arrSimple2.join());
</script>
解释:a,b表示数组中的任意两个元素,若return > 0 b前a后;reutrn < 0 a前b后;return = 0时存在浏览器兼容.
简化一下:a-b输出从小到大排序,b-a输出从大到小排序。【a-b时,若a-b>0,由于return>0,b前a后,由于a>b,所以是升序】
例二:
// 根据元素转换为字符串后的字符长度进行升序排列function arraySortByLength(a, b){ // 为便于用户理解,此处未考虑a或b为undefined或null的情况。 var aStr = a.toString(), bStr = b.toString(); // 如果是按照字符长度降序排序,则应该为bStr.length - aStr.length return aStr.length - bStr.length;}9。arr.slice(start[,end]).返回当前数组的一部分(连续的一段,以数组的形式返回)。 范围[start,end)左闭右开。 原数组保持不变。 若start为负,则start=length + start;10。arr.join(separator)。函数返回一个字符串,该字符串由当前数组的所有元素,并且元素之间以指定的分隔符连接起来所组成。11。string.split(separator[,limit]).使用指定分隔符分割字符串,并返回分割后的若干个子字符串组成的数组。
js数组的一些操作的更多相关文章
- JS 数组间的操作
JS 数组间的操作(交集,并集.差集) 以下是js数组之间常用的操作,如交集,并集.差集等. 迭代 each是一个集合迭代函数,可以将一个函数作为参数和一组可以选的参数.依次将集合的每一个元素和可选参 ...
- js 数组常用的操作函数整理
平时多做企业应用开发,抱着实用为主,对前端技术理解得比较肤浅,下面就是肤浅地对 js 数组的属性和方法及对它操作的 jquery 方法做些记录: js 数组是 js 内建的一个非常强大数据类型,由于 ...
- js数组的常用操作
数组合并 var arr=[1,"abc","张三","122"]; var b=["今天天气不错","适合学 ...
- js 数组的所有操作
js的数组操作有很多,这里记录了常用的和不常用的数组操作方法. 一.数组的创建 数组的创建有两种方法,一种是通过字面量,另一种是通过Array构造函数. 1.字面量 var num1 = [1,2,3 ...
- js 数组的crud操作
增加push(); 向数组尾添加元素unshift(); 向数组头添加元素向数组指定下标添加元素:可以用Array提供的splice(); var arr = ['a','b','c']; arr.s ...
- js数组设置值操作
js中给数组中添加新值的方式: var flow=[]; for(var i=0;i<21;i++){ flow.push(Math.floor(Math.random()*(30+((i%12 ...
- JS 数组相关的操作函数
// 1.数组拼接 concat() var a = [1, 2]; var b = [3, 4]; console.log(a.concat(b)); // [1, 2, 3, 4] // 2.数组 ...
- js数组的常见操作( push、pop、unshift、shift、splice、concat、 join)的用法
1.数组添加删除 头部或尾部( push().pop().unshift().shift() ) 例2.数组尾部添加 push()方法可向数组的末尾添加一个或多个元素,并返回新的长度 语法:array ...
- js几种基本数据类型及之间转换与java的不同、js数组一些常见操作
js的三大组成部分及各自作用: 1.ECMAScript:规范了js的基本语法和功能 2.DOM:js操作页面元素的API 3.BOM:js操作浏览器部分功能的API 如果通过<script s ...
随机推荐
- JSP页面转向方式
1.RequestDispatcher.forward() 是在服务器端起作用,当使用forward()时,Servlet engine传递HTTP请求从当前的Servlet or JSP到另外一个S ...
- NEC学习 ---- 模块 - 左图右文图文列表
该模块效果图: 这个模块也是在开发中经常使用的一种: HTML代码: <div class="container"> <div class="m-lis ...
- nginx服务器状态监控
Nginx开启监控需在编译时加入with-http_stub_status_module,查看当前Nginx编译参数:/usr/local/nginx/sbin/nginx -V 1.以二级目录方式开 ...
- python中raw_input输入数字问题
如果按照下面方式,则无论你输入什么,都会打印12,因为raw_input接受的输入是按照字符串处理的 num = raw_input('please enter a num:') if num > ...
- java FileLock
import java.nio.ByteBuffer; import java.nio.IntBuffer; import java.nio.channels.FileChannel; import ...
- Xcode 杂七杂八
一.Exception 的捕捉 1.message send to dealloc instance a, 输出控制台(lldb)后面输入:c + enter, 找到对应的行 b, po ...
- iOS: 上传App到AppStore,由于Xcode上传太慢,换成Application Loader上传,速度秒传
一.遇到的遭遇 在之前的项目开发中,本人有点固执,一直采用xcode打包后再上传,结果可想而知: (1)要么上传时速度慢的跟蜗牛似的,等的我心力交瘁(不排除网络不给力的原因,公司这个吊问题快把我气疯了 ...
- Map的简单语法
package jaxpsax; import java.util.Collection; import java.util.HashMap; import java.util.Iterator; i ...
- NSFileManager 遍历目录
NSFileManager *fileManager = [NSFileManager defaultManager]; NSString *documentPath = [NSHomeDirecto ...
- csuoj 1507: 超大型LED显示屏
http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1507 1507: 超大型LED显示屏 时间限制: 1 Sec 内存限制: 128 MB 提交: ...