JavaScript零基础入门——(八)JavaScript的数组

JavaScript零基础入门——(八)JavaScript的数组

欢迎大家回到我们的JavaScript零基础入门,上一节课我们讲了有关JavaScript正则表达式的相关知识点,便于大家更好的对字符串进行处理。这一节课,我们来讲一讲,JavaScript的数组。

之前我们有讲过,数组是用方括号包裹起来的一种存放数据的类型。但其实呢,数组在JS中是作为一种对象(即Array对象)存在,既然是对象,就会有它的属性和方法,至于为什么一定会有,我们后边的课再讲。

首先,我们来说一下数组的定义。一般来说,数组的定义有两种,一种是我们常见的用方括号来告诉程序,我是一个数组,具体表现为var arr = [];而另一种呢是比较标准的写法,即通过new Array来实现。通常情况下,我们的每一个数组,只存一种类型的变量。我们来看看代码:

var arr1 = [12,5,8];

var arr2 = new Array(12,5,8);

刚刚说了,作为Array对象,就一定有它的属性。Array的属性有不少,但我们常用的基本上只有一个,那就是length,即数组长度,这是一个可set可get的属性,也就是说我们可以取到它的值,也可以给他赋值,而赋值我们常常用于清空数组。来看代码:

var arr = [12,5,8,33];

console.log(arr.length);//4

arr.length = 0;

console.log(arr);//空的

说完属性,我们来说方法。JS数组的方法其实有很多,其中最常用的是五类数组操作方法,我们分别来看一下。

  • 添加元素
  1. push(item)——从尾部加一个数组元素;
  2. unshift(item)——从头部加一个数组元素;
  • 删除元素
  1. pop()——从尾部弹出一个元素;
  2. shift()——从头部弹出一个元素;
var arr = [12,5,8];

arr.push(33);

console.log(arr);//[12,5,8,33]

arr.unshift(1);

console.log(arr);//[1,12,5,8,33]

arr.pop();

console.log(arr);//[1,12,5,8]

arr.shift();

console.log(arr);//[12,5,8]
  • 排序
  1. sort([比较函数]),如果不传比较函数,默认只按字符串排序;
var arr = [12,99,65,8,24,16];

arr.sort(function(n1,n2){
    if(n1>n2){
        return 1;
    }else if(n1==n2){
        return 0;
    }else{
        return -1;
    }
});

arr.sort(function(n1,n2){
    return n1-n2;
});
  • 转换
  1. concat——两个数组连接;
  2. join(连接符)——将元素用连接符连接后返回字符串;
var arr = [12, 5, 8];

var arr2 = [6, 2, 3];

arr = arr.concat(arr2);

console.log(arr); //[12,5,8,6,2,3]

arr = arr.join('/')

console.log(arr); //12/5/8/6/2/3
  • 万能的splice
  1. 插入——splice(startIndex,0,item1,item2..);
  2. 删除——splice(startIndex,deleteLength);
  3. 先删后插入——splice(startIndex,deleteLength,item1,item2...);
var arr = [12, 5, 8];

arr.splice(1,0,16);

console.log(arr); //[12,16,5,8]

arr.splice(2,1);

console.log(arr); //[12,16,8]

arr.splice(1,1,10,18);

console.log(arr); //[12,10,18,8]

好了,这节课简单的了解了JavaScript的数组,希望大家自己敲一敲。下一节课,我们来讲一讲JavaScript中的函数。

                                                                                                       

如果想跟着振丹继续学习,可以微信关注【振丹敲代码】(微信号:JandenCoding)

新博文微信同步推送,还附有讲解视频哦~

也可直接扫描下方二维码关注。

转载于:https://my.oschina.net/JandenMa/blog/1831788

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值