一、属性

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. GUI记事本+切换面板1.1版

    package com.niit.javagui; import java.awt.Color; import java.awt.MenuBar; import java.awt.event.Inpu ...

  2. 【Alpha】——Sixth Scrum Meeting

    一.今日站立式会议照片 二.每个人的工作 成员 昨天已完成的工作 今天计划完成的工作 李永豪 对统计出现的问题进一步完善 学习将项目做成APK 郑靖涛 完善报表设计 协助设计账目一览表板块 杨海亮 测 ...

  3. 201521123119《Java程序设计》第8周学习总结

    1. 本周学习总结 2. 书面作业 Q1.List中指定元素的删除(题目4-1) Q1.1 实验总结 用split(" ")方法将list转化为字符串数组.要注意行中含有多个空格的 ...

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

    1. 本周学习总结 2. 书面作业 1.ArrayList代码分析 1.1 解释ArrayList的contains源代码 public boolean contains(Object o) { re ...

  5. Java中的基本数据类型和基本数据类型之间的转换

    在Java中有8中基本数据类型,分别为: 整型: byte.short.int.long 浮点型:float.double 布尔型:boolean 字符型:char. byte:    8位,  封装 ...

  6. MySQL集群(二)之主主复制

    前面介绍了主从复制,这一篇我将介绍的是主主复制,其实听名字就可以知道,主主复制其实就是两台服务器互为主节点与从节点.接下来我将详细的给大家介绍,怎么去配置主主复制! 一.主从复制中的问题 1.1.从节 ...

  7. jz2440重新分区

    在购买开发板的时候,板子上已经烧写好了bootloader.内核和文件系统.但是在具体使用时,发现板子上划分的内核分区只有2M,但是我编译出来的内核大于2M,于是将内核烧写到nandflash上面时会 ...

  8. SQL映射文件实现多种方式查询

    1.单条件查询在test中代码如下 2.多条件查询时需要把查询条件编辑为对象或者是集合传入,例如 通过对象进行查询 或者是通过集合进行查询列如Map集合 还有就是通过@Param注解实现多参数的入参, ...

  9. Python 接口测试(四)

    五:python数列化和反序列化 把python的对象编码转换为json格式的字符串,反序列化可以理解为:把json格式 字符串解码为python数据对象.在python的标准库中,专门提供了json ...

  10. Safe Area Layout Guide

    原文:Safe Area Layout Guide Apple在iOS 7中引入了topLayoutGuide和bottomLayoutGuide作为UIViewController属性.它们允许您创 ...