资讯专栏INFORMATION COLUMN

JavaScript 之 面向对象 [ Array类型 ]

stormjun / 3410人阅读

摘要:类型描述数组是可以存储一个或多个数据的有序集合检测数组表示检测指定的目标是否为数组定义一个数组显示判断该数组是否为引用类型显示方法用于判断当前对象的数据类型该方法可以判断任何类型定义一个数组显示显示判断类型显示方法该方法是继承于用于判断指

Array类型 描述

数组 - 是可以存储一个或多个数据的有序集合

检测数组

表示检测指定的目标是否为数组

/* 定义一个数组 */
var arr = [1,2,3,4,5];
console.log( arr );// 显示 [ 1, 2, 3, 4, 5 ]
/* 判断该数组是否为引用类型 */
console.log( arr instanceof Array );// 显示 true
Object.prototype.toSring.call()方法

用于判断当前对象的数据类型

该方法可以判断任何类型

/* 定义一个数组 */
var arr = [1,2,3,4,5];
console.log( arr );// 显示 [ 1, 2, 3, 4, 5 ]
console.log( Object.prototype.toString.call( arr ) );// 显示 [object Array]
/* 判断Number类型 */
console.log( Object.prototype.toString.call( 100 ) );// 显示 [object Number]
Array.prototype.isPrototypeOf()方法

该方法是继承于 Object

用于判断指定的类型是否出现在当前对象的原型链中

/* 定义一个数组 */
var arr = [1,2,3,4,5];
console.log( arr );// 显示 [ 1, 2, 3, 4, 5 ]
console.log( Array.prototype.isPrototypeOf( arr ) );// 显示 true
Array.isArray()方法

判断当前对象是否为数组

/* 定义一个数组 */
var arr = [1,2,3,4,5];
console.log( arr );// 显示 [ 1, 2, 3, 4, 5 ]
console.log( Array.isArray( arr ) );// 显示 true
转换数组

toString()方法 - 表示将指定目标转换成字符串类型

valueof()方法 - 表示返回指定目标的原始值

原始值 - 使用字面量方式定义出的数据值

/* 定义一个数组 */
var arr = [1,2,3,4,5];
console.log( arr );// 显示 [ 1, 2, 3, 4, 5 ]

/* toString()方法 */
console.log( arr.toString() );// 显示 1,2,3,4,5
/* valueof()方法 */
console.log( arr.valueOf() );// 显示 [ 1, 2, 3, 4, 5 ]
进出栈方法 push()方法 和 pop()方法

push()方法 - 表示在指定数组的最后面添加一个或多个元素

pop()方法 - 表示对指定数组中的最后一个元素进行删除

/* 定义一个数组 */
var arr = [1,2,3,4,5];
console.log( arr );// 显示 [ 1, 2, 3, 4, 5 ]

/* 通过push()方法进行添加 */
arr.push( 6 );
console.log( arr );// 显示 [ 1, 2, 3, 4, 5, 6 ]
/* 通过pop()方法进行删除 */
arr.pop();
console.log( arr );// 显示 [ 1, 2, 3, 4, 5 ]
unshift()方法 和 shift()方法

unshift()方法 - 表示在指定数组的最前面添加一个或多个元素

shift()方法 - 表示对指定数组中第一个元素进行删除

/* 定义一个数组 */
var arr = [1,2,3,4,5];
console.log( arr );// 显示 [ 1, 2, 3, 4, 5 ]
/* 通过unshift()方法进行添加 */
arr.unshift( 7, 8 );
console.log( arr ); // 显示 [ 7, 8, 1, 2, 3, 4, 5 ]
/* 通过shift()方法进行删除 */
arr.shift();
console.log( arr );// 显示 [ 8, 1, 2, 3, 4, 5 ]
排序方法

表示对数组的排列方式进行设置

reverse()方法

表示将元素从大小进行排序

sort()方法

表示将元素先转换成 Unicode码 在根据 Unicode码 进行排序

/* 定义一个数组 */
var arr = [1,2,3,4,5];
/* 默认排序 */
console.log( arr );// 显示 [ 1, 2, 3, 4, 5 ]

/* reverse()方法的排序 */
console.log( arr.reverse() );// 显示 [ 5, 4, 3, 2, 1 ]

/* sort()方法的排序 */
console.log( arr.sort() );// 显示 [ 1, 2, 3, 4, 5 ]
连接方法

concat()方法

表示将两个或多个数组中的元素进行连接,显示在一个数组中

/* 定义一个数组 */
var arr1 = [1,2,3,4,5];
console.log( arr1 );// 显示 [ 1, 2, 3, 4, 5 ]
/* 定义另一个数组 */
var arr2 = [6,7,8,9];
console.log( arr2 );// 显示 [ 6, 7, 8, 9 ]
/* 通过concat()方法将两个数组进行拼接 */
console.log( arr1.concat( arr2 ) );// 显示 [ 1, 2, 3, 4, 5, 6, 7, 8, 9 ]
操作方法

表示对数组进行的一系类操作

比如 删除、插入、替换、等等...

splice()方法

表示对数组进行添加或删除元素

删除元素

第一个参数 - 表示删除元素的开始位置(索引值)

第二个参数 - 表示删除元素的个数

该方法的返回值 - 将删除的元素组成新的数组进行返回

/* 定义一个数组 */
var arr = [1,2,3,4,5];
console.log( arr );// 显示 [1,2,3,4,5]
/* 将方法的返回值赋值给一个变量 */
var s1 = arr.splice( 0, 5 );
/* 显示删除的元素数据 */
console.log( s1 );// 显示 [ 1, 2, 3, 4, 5 ]
/* 显示删除后数组 */
console.log( arr );// 显示 []
添加元素

第一个参数 - 表示添加元素的位置

第二个参数 - 表示删除元素的个数

第三个参数 - 表示添加的元素(添加的元素可以是多个)

/* 定义一个数组 */
var arr = [1,2,3,4,5];
console.log( arr );// 显示 [1,2,3,4,5]
/* 将方法的返回值赋值给一个变量 */
var s2 = arr.splice( 0, 0, 6,7,8 );
/* 显示删除的元素数据 */
console.log( s2 );// 显示 []
/* 显示添加元素的位置 */
console.log( arr );// 显示 [ 6, 7, 8, 1, 2, 3, 4, 5 ]
slice()方法

表示对指定数组中的元素进行截取

参数

第一个参数 - 表示开始截取的位置(默认从 0(索引值)开始)

第二个参数 - 表示结束截取的位置(默认到数组最后的位置)

/* 定义一个数组 */
var arr = [1,2,3,4,5];
console.log( arr );// 显示 [1,2,3,4,5]
/* 将方法的返回值赋值给一个变量 */
var s3 = arr.slice( 3, 4 );
/* 显示截取的元素 */
console.log( s3 );// 显示 [ 4 ]
检测方法

表示检测目标数组中是否存在指定元素

indexOf()方法

表示从左到右的顺序进行检测

/* 定义一个数组 */
var arr = [1,2,3,4,2,5,6];
console.log( arr );// 显示 [ 1, 2, 3, 4, 2, 5, 6 ]

/* 通过indexOf()方法进行检测 */
console.log( arr.indexOf( 2 ) );// 显示 1(索引值)
lastIndexOf()方法

表示从右到左的顺序进行检测

/* 定义一个数组 */
var arr = [1,2,3,4,2,5,6];
console.log( arr );// 显示 [ 1, 2, 3, 4, 2, 5, 6 ]
/* 通过lastIndexOf()方法进行检测 */
console.log( arr.lastIndexOf( 2 ) );// 显示 4(索引值)
检测的目标不存在时

以上两种方法只能匹配到第一个与目标元素相同的元素,并显示位置信息

如果指定数组中存在多个相同元素数据,只会找到第一个,剩下的将不会再去查找

如果需要检测的元素不存在会显示 -1(固定写法)

/* 定义一个数组 */
var arr = [1,2,3,4,2,5,6];
console.log( arr );// 显示 [ 1, 2, 3, 4, 2, 5, 6 ]
/* 检测的目标不存在时 */
console.log( arr.indexOf( 8 ) );// 显示 -1

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/108399.html

相关文章

  • JavaScript面向对象Array类型与迭代与归并

    摘要:一类型数组的常见方法检测数组报错方法判断该类型是否出现在当前对象原型链中转换数组把数组转为字符串,并返回返回数组对象原始值利用方法把数组转为字符串多个数组元素被逗号进行分隔组成字符串犬夜叉进出栈方法添加数组末尾增加一个元素或多个元素删除数 JS(JavaScript)一.Array类型1.数组的常见方法; 检测数组; var arr = [1,2,3,4,5]; console.lo...

    darkbug 评论0 收藏0
  • JavaScript面向对象String类型

    摘要:类型概述字符串是什么类型与原始类型对应包装类型常见操作大小写转换表示大写表示小写并以对象提供,用于大小写转换转换成大写在转换成小写获取指定位置的字符串对象提供,用于获取指定位置的字符表示将指定位置的字符表示将指定位置的字符的编码检索字符串对 JS(JavaScript)String类型;1.概述; 字符串是什么 String类型与原始类型string对应包装类型2.常见操作; 大小写转...

    pf_miles 评论0 收藏0
  • 温故知新javascript面向对象

    摘要:应该非常小心,避免出现不使用命令直接调用构造函数的情况。上面代码表示,使用属性,确定实例对象的构造函数是,而不是。当然,从继承链来看,只有一个父类,但是由于在的实例上,同时执行和的构造函数,所以它同时继承了这两个类的方法。 基本概念 类和实例是大多数面向对象编程语言的基本概念 类:类是对象的类型模板 实例:实例是根据类创建的对象但是,JavaScript语言的对象体系,不是基于类的,...

    赵连江 评论0 收藏0
  • JavaScript深入浅出

    摘要:理解的函数基础要搞好深入浅出原型使用原型模型,虽然这经常被当作缺点提及,但是只要善于运用,其实基于原型的继承模型比传统的类继承还要强大。中文指南基本操作指南二继续熟悉的几对方法,包括,,。商业转载请联系作者获得授权,非商业转载请注明出处。 怎样使用 this 因为本人属于伪前端,因此文中只看懂了 8 成左右,希望能够给大家带来帮助....(据说是阿里的前端妹子写的) this 的值到底...

    blair 评论0 收藏0
  • JavaScript面向对象原型

    摘要:一原型概括原型是什么对象包含数学方法的函数,函数定义在属性,初始值为一个空对象原型的属性和方法不会影响函数自身的属性和方法类型的属性所有函数都具有的属性定义函数原型的默认值是空对象函数包含构造函数所有引用类型其实都是构造函数获取原型通过 JS(JavaScript)一.原型1.概括 原型是什么 Function对象包含数学方法的函数,函数定义在protoype属性,初始值为一个空对象原...

    Cristalven 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<