一、属性

length

数组的大小。数组的length属性总是比数组中定义的最后一个元素的下标大一,设置属性length的值可以改变数组的大小。如果设置的值比它的当前值小,数组将被截断,其尾部的元素将丢失。如果设置的值比它的当前值大,数组将增大,新元素被添加到数组尾部,它们的值为undefined。

二、方法

A、添加删除类

1、Array.push( )

给数组添加元素。添加到array尾部的值,可以是一个或多个。

返回值是数组的新长度。

示例代码:

var a=["a","b","c",1,2,3];

alert(a.push("d","e"));

alert(a);

2、Array.unshift( )

在数组头部插入一个元素。添加到array头部的值,可以是一个或多个。

返回值是数组的新长度。

示例代码:

var a=["a","b","c",1,2,3];

alert(a.unshift("d","e"));

alert(a);

3、Array.pop( )

删除并返回数组的最后一个元素。

如果数组已经为空,则pop()不改变数组,返回undefined。

示例代码:

var a=["a","b","c",1,2,3];

alert(a.pop());

alert(a);

4、Array.shift( )

把array的第—个元素移出数组,返回那个元素的值。

如果数组是空的,shift()将不进行任何操作,返回undefined。

示例代码:

var a=["a","b","c",1,2,3];

alert(a.shift());

alert(a);

5、万能添加删除的函数Array.splice( )

语法:array.splice(start, deleteCount, value, ...)

splice()将删除从start开始(包括start所指的元素在内)的零个或多个元素,并且用参数列表中声明的一个或多个值来替换那些被删除的元素。

参数:

start :开始插入和(或)删除的数组元素的下标。

deleteCount :从start开始,包括start所指的元素在内要删除的元素个数。这个参数是可选的,如果没有指定它,splice()将删除从start开始到原数组结尾的所有元素。

value, ... :要插人数组的零个或多个值,从start所指的下标处开始插入。

示例代码:

var a=["a","b","c",1,2,3];

alert(a.splice(1,2,"d","e"));

alert(a);

B、数组的转换

Array.join( )

方法join()将把每个数组元素转换成一个字符串,然后把这些字符串连接起来,在两个元素之间插入指定的separator字符串。返回生成的字符串。

如果省略了separator参数,用逗号作为分隔符。

示例代码:

var a=["a","b","c",1,2,3];

alert(a.join());

alert(a.join("-"));

C、数组的分割

array.slice(start, end)

slice()将返回数组的一部分,或者说是一个子数组。返回的数组包含从start 开始到end之间的所有元素,但是不包括end所指的元素。如果没有指定end,返回的数组包含从start开始到原数组结尾的所有元素。

start是数组片段开始处的数组下标。如果是负数,它声明从数组尾部开始算起的位置。 也就是说,-1指最后一个元素,-2指倒数第二个元素,以此类推。

返回的是一个新数组。

示例代码:

var a=["a","b","c",1,2,3];

alert(a.slice(2,4));

alert(a.slice(2));

alert(a.slice(-2,-1));

D、排序

Array.sort( )

对数组元素进行排序。

如果调用方法sort()时没有使用参数,将按字母顺序(更为精确地说,是按照字符编码的顺序)对数组中的元素进行排序。

如果想按照别的顺序进行排序,就必须提供比较函数,该函数要比较两个值,然后返回一个用于说明这两个值的相对顺序的数字。比较函数应该具有两个参数a和b。

示例代码1:

var a=["a","f","bbs","e","b","c"];

a.sort();

alert(a);

示例代码2:

var b=[34,845,2,7676,11];

b.sort();

alert(b);

示例代码3:

var b=[34,845,2,7676,11];

b.sort(function(a,b){

return a-b;

});

alert(b);

E、数组的连接

Array.concat( )

连接两个或更多的数组或新的元素,并返回新数组。

对原数组没有影响。

示例代码:

var a=[1,2,3];

var b=["a","b","c"];

var c=["哈哈","www"];

alert(a.concat(b,c));

alert(a);

alert(b.concat("d","e"));

【学习】js学习笔记---数组对象的更多相关文章

  1. js变量作为数组对象的键值方法

    js变量作为数组对象的键值方法,变量键值获取数组值 js也可以像php的数组一样用下标获取数组的值,方法是: var arr = {'key':'abc'}; var key = 'key'; con ...

  2. Numpy学习一:ndarray数组对象

    NumPy是Python的一个高性能科学计算和数据分析基础库,提供了功能强大的多维数组对象ndarray.jupyter notebook快速执行代码的快捷键:鼠标点击选中要指定的代码框,Shift ...

  3. 浅谈js的类数组对象arguments

    类数组对象:arguments总所周知,js是一门相当灵活的语言.当我们在js中在调用一个函数的时候,我们经常会给这个函数传递一些参数,js把传入到这个函数的全部参数存储在一个叫做arguments的 ...

  4. js中的数组对象排序(方法sort()详细介绍)

    定义和用法 sort() 方法用于对数组的元素进行排序. 语法    arrayObject.sort(sortby) 参数sortby:可选.规定排序顺序.必须是函数. 返回值 对数组的引用.请注意 ...

  5. js中的数组对象排序

    一.普通数组排序 js中用方法sort()为数组排序.sort()方法有一个可选参数,是用来确定元素顺序的函数.如果这个参数被省略,那么数组中的元素将按照ASCII字符顺序进行排序.如: var ar ...

  6. js- 类数组对象

    JavaScript中,数组是一个特殊的对象,其property名为正整数,且其length属性会随着数组成员的增减而发生变化,同时又从Array构造函数中继承了一些用于进行数组操作的方法. 而对于一 ...

  7. js两个数组对象通过相同元素匹配筛选

    let a = [ { name: 'joy', year: '24' }, { name: 'eve', year: '25' } ] let b = [ { name: 'joy', city: ...

  8. js 两个数组对象根据账号比较去重,解决直接splice后数组索引改变

    目的获取Arr2中不包含在arr1中的对象 根据Account进行比较,如果相等则删除tempArr数组对象. 结果返回张三 var arr1=[{"account":" ...

  9. 分享个人学习js的笔记

    1.回到顶部效果. 2.滚动条向上滚动式,滑动滚轮.解决bug的方法. 3.有关Document. 4.getElementByClassName();获取元素类名的封装.单个类名的元素.任然不完美. ...

随机推荐

  1. 个人作业3——个人总结(Alpha阶段)

    Deadline: 2017-5-15 22:00PM,以博客发表日期为准 评分基准: 按时交 - 有分,检查的项目个人总结内容 晚交 - 0分 迟交一周以上 - 倒扣本次作业分数 抄袭 - 倒扣本次 ...

  2. 第二次项目冲刺(Beta阶段)5.22

    1.提供当天站立式会议照片一张 会议内容: ①检查前一天的任务情况,将遇到的困难反馈.解决. ②制定新一轮的任务计划. 2.每个人的工作 (1)工作安排 队员 今日进展 明日安排 王婧 #53(完成) ...

  3. 201521123082 《Java程序设计》第12周学习总结

    201521123082 <Java程序设计>第12周学习总结 标签(空格分隔): java 1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多流与文件相关内容. An ...

  4. 201521123045 《Java程序设计》第4周学习总结

    第4周作业-面向对象设计与继承 1. 本周学习总结 1.1 尝试使用思维导图总结有关继承的知识点. 2. 书面作业 Q1.注释的应用使用类的注释与方法的注释为前面编写的类与方法进行注释,并在Eclip ...

  5. 201521123005《java程序设计》第三周学习总结

    1. 本周学习总结 初学面向对象,会学习到很多碎片化的概念与知识.使用思维导图将这些碎片化的概念.知识组织起来.使用工具画出本周学习到的知识点. 参考资料: 百度脑图 XMind 2. 书面作业 ·Q ...

  6. 201521123073 《Java程序设计》第14周学习总结

    14周-数据库 1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多数据库相关内容. 2. 书面作业 1. MySQL数据库基本操作 建立数据库,将自己的姓名.学号作为一条记录插入. ...

  7. 201521123028 《Java程序设计》 第9周学习总结

    1. 本周学习总结 2. 书面作业 Q1.常用异常 题目5-1 1.1 截图你的提交结果(出现学号) 1.2 自己以前编写的代码中经常出现什么异常.需要捕获吗(为什么)?应如何避免? Ans: 在JA ...

  8. Java 最常用类(前100名)来自一万个开源项目

    大部分的 Java 软件开发都会使用到各种不同的库.近日我们从一万个开源的 Java 项目中进行分析,从中提取出最常用的 Java 类,这些类有来自于 Java 的标准库,也有第三方库.每个类在同一个 ...

  9. 假设我的朋友账号分别是v{1,2,3,4,5},且这五人想要共享一个目录,因此应该加入同一个群组,假设这个群组为vbird,且这五个账号的密码均为password.那该如何建置这五个账号?

    假设我的朋友账号分别是v{1,2,3,4,5},且这五人想要共享一个目录,因此应该加入同一个群组,假设这个群组为vbird,且这五个账号的密码均为password.那该如何建置这五个账号?#!/bin ...

  10. bookStore第三篇【用户模块、购买模块、订单模块】

    用户模块 要登陆后才能购买,因此我们先写购买模块 设计实体 private String id; private String username; private String password; p ...