资讯专栏INFORMATION COLUMN

Array类型

2json / 2386人阅读

摘要:专门用于筛选出数组中符合函数判断条件的元素组成的心数组。专门用于对原数组中每个元素执行相同的函数对象规定的操作。

Array类型 数组的常见方法 检测数组

如何确定当前是一个数组,JS提供了以下几种方式
1.typeof无法检测数组对象:typrof[]返回object
2.instanceof:[]instanceof Array返回true/false
3.Object.prototype.toString.call([])返回[object Array]
4.Array.prototype.isPrototypeOf([])返回true/false
5.ES5中的新方法,Array.isArray([])返回true/false

var arr = [1,2,3,4,5];
console .log(arr instanceof Array);//true
console.log(Object.prototype.toString.call(arr));//[object Array]
console .log(typeof null);//object
console .log(null instanceof Object);//false
console.log(Object.prototype.toString.call(null));//[object Null]
console .log(Array .prototype.isPrototypeOf(arr));//true
console.log(Array.isArray(arr));//true
转换方法

JS提供了如下的方法用于数组的转换
1.toString() 把数组转换为字符串,并返回结果
2.valueOf() 返回数组对象的原始值

var arr =[1,2,3,4,5];
console .log(arr.toString());//1,2,3,4,5
console .log(arr.valueOf());//[1,2,3,4,5]


var obj = {
    name :"jinx"
}
console .log(obj.valueOf());//{name:"jinx"}
进出栈方法

JS中提供了如下方法,用于数组的进出栈操作
1.push()想数组的末尾添加一个或多个元素,并返回新的长度
2.pop() 删除数组中的而最后一个元素并返回删除的元素
3.shift()删除并返回数组的第一个元素
4.unshift() 向数组的开头添加一个或更多的元素,并返回新的长度

var arr= [1,2,3,4,5];
arr .push(6);
console .log(arr);//[ 1, 2, 3, 4, 5, 6 ]
arr.pop();
console .log(arr);//[ 1, 2, 3, 4, 5 ]

arr.unshift(7);
console .log(arr);//[ 7, 1, 2, 3, 4, 5 ]
arr.shift();
console .log(arr);//[ 1, 2, 3, 4, 5 ]
排序方法

JS中提供了如下的方法,用于数组的排序操作
1.reverse() 反转数组的元素顺序
2.sort() 对数组的元素进行排序

var values = [1,2,3,4,5,6];
console .log(valuse.sort());//1,2,3,4,5,6
console .log(values. reverse());//6,5,4,3,2,1
###连接方法###
在JS中提供了以下方法,用于多个数组间的连接操作
concat()    连接两个或更多的数组,并返回结果

var arr = [1,2,3,4,5];
console .log(arr.concat(6));//[ 1, 2, 3, 4, 5, 6 ]
console .log(arr.concat([7,8,9]));//[ 1, 2, 3, 4, 5, 7, 8, 9 ]

###操作方法###
slice()  选取数组的一部分,并返回一个新数组
splice() 从数组中添加或删除元素

var arr = [1,2,3,4,5];
/*

splice(start, deleteCount)方法
* 作用 - 用于删除当前数组中指定位置指定个数的元素
* 参数
  * start - 表示删除的开始位置
  * deleteCount - 表示删除的个数
* 返回值 - 将删除的元素组成的新数组进行返回

*/
// var result = arr.splice(0, 5);
// console.log(result);
// console.log(arr);

/*

splice(start, deleteCount, item1, item2, ...)方法
* 作用 - 向指定数组的指定位置添加元素
* 参数
  * start - 表示删除的开始位置
  * deleteCount - 表示删除的个数
  * item1, item2, ... - 表示向数组添加的元素
* 返回值 - 将删除的元素组成的新数组进行返回

*/
// var result = arr.splice(0, 0, 6,7,8);
// console.log(result);
// console.log(arr);

// var result = arr.splice(0, 3, 6,7,8);
// console.log(result);
// console.log(arr);

/*

slice()方法
* 作用 - 截取指定数组中的元素
* 参数
  * begin - 表示开始截取的位置(从 0 开始)
  * end - 表示结束截取的位置(截取最后一个位置的下一个位置)
* 返回值 - 返回截取的元素组成的新数组

*/
var result = arr.slice(2,3);
console.log(result);

###检索方法###
indexOf() 搜索数组中的元素,并返回他所在的位置
lastindexOf  返回一个指定的字符串值最后出现的位置,在一个字符串中指定位置从后向前搜索

var arr =["jinx","vn","mf","noc"];
console .log(arr.indexOf("jinx"));//0
console .log(arr.indexOf("mf"));//2
console .log(arr.indexOf("bec"));//-1

###forEach方法###

var arr = ["jinx","mf","noc","vn"];
arr. forEach(function(currentValue,index,array){

console .log(currentValue);
console .log(index);
console .log(array);

});

###迭代方法###
1.every():判断数组中每个元素是否都满足fun函数定义的条件。只有满足才返回true,否则返回false。
2.filter():专门用于筛选出数组中符合fun函数判断条件的元素组成的心数组。
3.forEach():专门用于对原数组中每个元素执行相同的fun函数对象规定的操作。
4.map():专门用于基于袁术组创建新数组对象。
5.some():判断数组中是否包含满足fun含糊是定义的条件的元素,只要包含就返回true,否则返回false。

var arr = [1,2,3,4,5];
var result = arr.every(function(currentValue,index,array){

return (currentValue<=5);

});
console .log(result);

##并归方法###
1.reduce()将数组从左向右迭代。
2.reduceRight()将数组从右向左迭代.

var arr = [1,2,3,4,5];
arr .reduce(function(accumulator,currentValue,cunrrentIndex,array){

console .log(accumulator)
return accumulator + currentValue;

});

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

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

相关文章

  • 1、自定义类型的定义及使用 2、自定义类的内存图 3、ArrayList集合的基本功能 4、随机点名

    摘要:自定义类的概述自定义类的概述代码映射成现实事物的过程就是定义类的过程。自定义类的格式自定义类的格式使用类的形式对现实中的事物进行描述。 01引用数据类型_类 * A: 数据类型 * a: java中的数据类型分为:基本类型和引用类型 * B: 引用类型的分类 * a: Java为我们提供好的类,比如说:Scanner,Random等。 * b: 我们自己创建的类...

    only_do 评论0 收藏0
  • 你所不知道的JavaScript数组

    摘要:原始缓冲区的创建通过这个构造函数可以创建一个原始缓冲区从控制台可以看到实例拥有一个的属性,用于获取的,一个只有以及支持的方法,用于对长度进行截取操作。所有数组类型的长度均固定。 本文同步自我的博客园:http://www.cnblogs.com/hustskyking/ 相信每一个 javascript 学习者,都会去了解 JS 的各种基本数据类型,数组就是数据的组合,这是一个很基本...

    KnewOne 评论0 收藏0
  • JavaScript引用类型——“Array类型”的注意要点

    摘要:创建数组读取和设置数组的值创建数组创建数组的基本方式有两种使用构造函数使用数组字面量表示法对于第一种方法,如果知道数组要保存多少个项目,也可以给构造函数传递参数,比如要创建值为的数组操作符可以省略。也可以向构造函数传递包含的项。 Array 类型 除了Object 之外,Array 类型也是相当常用的类型了。ECMAScript 数组的每一项可以保存任何类型的数据。且数组大小也能够动态...

    AlphaWatch 评论0 收藏0
  • Java 泛型总结(二):泛型与数组

    摘要:总结数组与泛型的关系还是有点复杂的,中不允许直接创建泛型数组。本文分析了其中原因并且总结了一些创建泛型数组的方式。 简介 上一篇文章介绍了泛型的基本用法以及类型擦除的问题,现在来看看泛型和数组的关系。数组相比于Java 类库中的容器类是比较特殊的,主要体现在三个方面: 数组创建后大小便固定,但效率更高 数组能追踪它内部保存的元素的具体类型,插入的元素类型会在编译期得到检查 数组可以持...

    Vultr 评论0 收藏0
  • eosjs 文档(Numeric)

    摘要:定义于类型声明参数名称类型返回定义于签名数据大小,不包括类型字段。参数名称类型返回定义于如果密钥是旧格式前缀,则将其转换为新格式,保持其他格式不变。参数名称类型返回定义于返回定义于返回定义于将中的无符号十进制数转换为。 Numeric 枚举 KeyType 接口 Key 变量 base58Chars base58Map base64Chars base64Map privateKey...

    superw 评论0 收藏0

发表评论

0条评论

2json

|高级讲师

TA的文章

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