今天经理要我从新看一遍js,当我再看《精通js和jquery》这本书时,发现关于数组的这章节讲的很少,于是想自己总结一下数组的常用方法。

定义数组:

var arr = new Array(12);

arr[10] = “cmc”;
var arr = new Array(); //无法确定一个数组的长度时

var arr = [“chen”,”liu”,”huang”];

var arr = new Array( [“chen”,”liu”,”huang”]);

var a = new Array(5); //指创建长度为5的数组
var a = new Array([5]); //指创建一个数组,长度为1,并且第一位是5

数组属性:

1. length属性:Length属性表示数组的长度,即其中元素的个数。因为数组的索引总是由0开始,所以一个数组的上下限分别是:0和length-1。和其他大多数语言不同的是,

JavaScript数组的length属性是可变的,这一点需要特别注意。arr.length=0;,这就是一种清空js数组的方式

2. constructor 指定建立地象原型(prototype)函数

3. index 代表数组组件的索引值

4.prototype 用以建立自定义的对象属性

数组方法:

toString 将数组转为String

concat   方法:返回一个新数组,这个新数组是由两个或更多数组组合而成的。array1.concat([item1[,   item2[,   .   .   .   [,   itemN]]]])

join   方法   :返回字符串值,其中包含了连接到一起的数组的所有元素,元素由指定的分隔符分隔开来。arrayObj.join(separator) 与C#不同的是这里是直接通过数组调用出来返回给一个字符串.

split  方法  :返回数组 基本和C#一样  var s="1_2_3"; var ary=s.split("_"); 参数是字符串而不是字符

pop   方法   :移除数组中的最后一个元素并返回该元素。arrayObj.pop()

push   方法   :将新元素添加到一个数组中,并返回数组的新长度值。arrayObj.push([item1   [item2   [.   .   .   [itemN   ]]]])

reverse   方法   :返回一个元素顺序被反转的   Array   对象。arrayObj.reverse(   ) 注意这里是返回一个 原来的数组而不是创建了一个新的数组.

shift   方法   :移除数组中的第一个元素并返回该元素。arrayObj.shift(   )

slice   方法   :返回一个数组的一段。arrayObj.slice(start,   [end])

sort   方法   :返回一个元素已经进行了排序的   Array   对象。arrayobj.sort(sortfunction)  
               如果 sort()里面没有参数那么将按照字母顺序排列
               如果要用从大到小顺序排列里面需要带参数sort(function(a,b){return b-a});

splice   方法   :从一个数组中移除一个或多个元素,如果必要,在所移除元素的位置上插入新元素,返回所移除的元素。arrayObj.splice(start,   deleteCount,   [item1[,   item2[,   .   .   .   [,itemN]]]])

unshift   方法   :将指定的元素插入数组开始位置并返回该数组。arrayObj.unshift([item1[,   item2   [,   .   .   .   [,   itemN]]]]) 在IE下无效,返回undefined fox下可以

alert(arr01.split(“”).reverse().join(“”));//先将每个字符分割为一个数组,然后反序数 组,最后将数组无连接符的转化为字符串,反转数组的字符

数组的三种清空方法:

方式1,splice 

var ary = [1,2,3,4];
ary.splice(0,ary.length);
console.log(ary); // 输出 [],空数组,即被清空了

方式2,length赋值为0 

目前 Prototype中数组的 clear 和mootools库中数组的 empty 使用这种方式清空数组。

int[] ary = {1,2,3,4};
ary.length = 0; 

方式3,赋值为[] 

这里其实并不能说是严格意义的清空数组,只是将ary重新赋值为空数组,之前的数组如果没有引用在指向它将等待垃圾回收。

Ext库Ext.CompositeElementLite类的 clear 使用这种方式清空。

var ary = [1,2,3,4];
ary = []; // 赋值为一个空数组以达到清空原数组 

清空方式的选择:

由于第三种它只是重新给数组赋值,将其覆盖。并不是真正意义的清空,所以他的效率比较高。第一种过于繁琐,而第二种是真的清空,又很简单,所以一般使用推荐第二种。

javascript数组的属性、方法和清空-最全!!!(必看)相关推荐

  1. Javascript数组的 splice方法介绍

    Javascript数组的 splice 方法介绍 splice() 方法通过删除或替换现有元素或者原地添加新的元素来修改数组,并以数组形式返回被修改的内容.此方法会改变原数组. 语法格式 array ...

  2. Javascript 数组求和的方法

    1.应用场景 主要用于数组求和. 2.学习/操作 JavaScript 数组求和的方法 var array = [1, 2, 3, 4, 5]; var sum = 0; 1.for循环 for (l ...

  3. Javascript数组常见的方法

    分为两种:原型(实例)方法和静态函数 第一类:原型方法: 栈方法(后进先出) push 参数:任意个 作用:将任意数量的参数逐个添加到数组尾部 返回值: 新数组的长度 影响:破坏了原数组 pop 参数 ...

  4. JavaScript数组常用的方法总结

    导读:在实际开发中,前端工程师除了写页面布局及样式还要对后端返回的数据进行处理,返回的数据大多数是json格式,一般都是返回一个对象或者数组,下面对常用的数组的使用方法进行总结,方便在开发中手到擒来! ...

  5. 提升代码格调——JavaScript 数组的 reduce() 方法入门

    基本概念 reduce() 方法为数组中的每一个元素依次执行回调函数(不包括数组中被删除或从未被赋值的元素),返回一个具体的结果. 语法 reduce() 接收两个参数,其基本语法为: arr.red ...

  6. JavaScript数组内置方法-知识

    /*         *  数组中常用的内置方法:基于这些方法可以让我们有效的对数组进行操作         *  console.dir(Array.prototype)  查看数组内置方法     ...

  7. 【基础恶补】JavaScript数组的一些方法,reduce,filter,reverse,map等

    reduce reduce方法会对数组中的每个元素按序执行由你提供的reducer函数,每一次运行reducer会将先前元素的计算结果作为参数传入,最后将其结果汇总为单个返回值. 用法,两个参数cal ...

  8. 校验正确获取对象或者数组的属性方法(babel-plugin-idx/_.get)

    背景: 开发中经常遇到取值属性的时候,需要校验数值的有效性. 例如: 获取props对象里面的friends属性 props.user && props.user.friends &a ...

  9. javascript数组查重方法总结

    文章参考地址:http://blog.csdn.net/chengxuyuan20100425/article/details/8497277 题目 对下列数组去重: var arr = ['aa', ...

最新文章

  1. ecshop商品详细描述调用商品相册代码
  2. resin 4.0数据源的配置
  3. IP代理在网络游戏中的应用
  4. fscanf的返回值未成功输入的元素个数 .xml
  5. 喂。請罘葽缺蓆涐旳以后
  6. 下载丨58页PDF,云和恩墨技术通讯(2020年12月刊)
  7. java 当前时间小时数,java获取当前时间前几个小时的时间
  8. 机器学习入门框架scikit-learn
  9. 客户端连接不上kafka的解决方案
  10. 字符串常量与字符数组的区别和字符串常量易错点
  11. 跨域异常与nginx的underscores_in_headers on
  12. android打开超链接屏幕太小,手机屏幕太小,教你2种方法投屏到电脑上,小白也能轻松搞定!...
  13. 74cms代码执行漏洞
  14. “绿萌”仿“大麦”演出购票APP
  15. 什么是外汇EA呢?工作的原理又是什么呢?送给不懂外汇EA
  16. 共享单车信息系统服务器部署,共享单车云服务器
  17. 【HGE】使用C++从加密压缩包中读取图像文件并显示
  18. Python之绘制个人足迹地图
  19. 为什么祖传代码被称为「屎山」?这个回答简直太形象了
  20. itunes无法安装到win7系统更新服务器,win7系统无法安装itunes应用程序的解决方案...

热门文章

  1. oppo售后解锁工具_Realme X50/X50 Pro 5G版解锁BL获取完美ROOT权限全套详细刷机
  2. pycharm导入自定义模块问题
  3. 深度学习和目标检测系列教程 3-300:了解常见的目标检测的开源数据集
  4. 六十三、栈在括号匹配和表达式求值中的应用
  5. 手把手教你插入数学公式,妈妈再也不用担心我写不了论文了
  6. 工程制图 (装配图)
  7. 十八、前端必学Bootstrap美化(上篇)
  8. 如何阅读AI顶会论文,搭建深度学习知识体系框架?
  9. 打印Show Attend and Tell的损失函数
  10. 08 | 事务到底是隔离的还是不隔离的