JavaScript之Array/数组小结
MDN-Array的属性/方法:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Array
clear();
//0.数组长度 array.length
console.log("array.length:",[45,67].length); //1.数组-原型 Array.prototype
console.log("Array.prototype:",Array.prototype) //2.Array.from() :对伪数组或可迭代对象(包括arguments Array,Map,Set,String...)转换成数组对象
console.log("Array.from(obj)",Array.from(["a3","56757","56757",[67,8768]]));
console.log("Array.from(obj)",Array.from("johnny")); //3.Array.isArray() 用于确定传递的值是否是一个 Array
console.log("Array.isArray(xxx):",Array.isArray([]),Array.isArray("")) var arr = [3,4,64,4,5,-45,6,67,-65,456435,4354]; //相当好用
//4.数组-过滤器
arr.filter(function(element,index,array){
if(element < 0){
return false;
} else
return true;
}) //相当好用
//5.数组-遍历/处理 Array.map(function(element,index,array){})
arr.map(function(element,index,array){
if(element>100){
console.log(element)
}
return element;
}) //6.数组-排序/处理 Array.sort(compareFunction)
var arrObj = [23,31,45,56];
arrObj.sort(function(a,b){ return a-b; }) //升序:[23,31,45,56] //7.数组元素修改操作:替换/剪切/删除 Array.prototype.splice() 实现数组的灵活删除与插入
var myFish = ["angel", "clown", "mandarin", "surgeon"];
//从第 2 位开始删除 0 个元素,插入 "drum"
var removed = myFish.splice(2, 0, "drum");
//运算后的 myFish:["angel", "clown", "drum", "mandarin", "surgeon"]
//被删除元素数组:[],没有元素被删除 //从第 3 位开始删除 1 个元素
removed = myFish.splice(3, 1);
//运算后的myFish:["angel", "clown", "drum", "surgeon"]
//被删除元素数组:["mandarin"] //从第 2 位开始删除 1 个元素,然后插入 "trumpet"
removed = myFish.splice(2, 1, "trumpet");
//运算后的myFish: ["angel", "clown", "trumpet", "surgeon"]
//被删除元素数组:["drum"] //从第 0 位开始删除 2 个元素,然后插入 "parrot", "anemone" 和 "blue"
removed = myFish.splice(0, 2, "parrot", "anemone", "blue");
//运算后的myFish:["parrot", "anemone", "blue", "trumpet", "surgeon"]
//被删除元素的数组:["angel", "clown"] //从第 3 位开始删除 2 个元素
removed = myFish.splice(3, Number.MAX_VALUE);
//运算后的myFish: ["parrot", "anemone", "blue"]
//被删除元素的数组:["trumpet", "surgeon"]
输出
array.length: 1
05:17:04.718 main.raven.938767835e3e5ae6e744.js:1 Array.prototype: [constructor: ƒ, concat: ƒ, pop: ƒ, push: ƒ, shift: ƒ, …]
05:17:04.721 main.raven.938767835e3e5ae6e744.js:1 Array.from(obj) (4) ["a3", "56757", "56757", Array(2)]
05:17:04.722 main.raven.938767835e3e5ae6e744.js:1 Array.from(obj) (6) ["j", "o", "h", "n", "n", "y"]
05:17:04.722 main.raven.938767835e3e5ae6e744.js:1 Array.isArray(xxx): true false
05:17:04.723 main.raven.938767835e3e5ae6e744.js:1 456435
05:17:04.723 main.raven.938767835e3e5ae6e744.js:1 4354
05:17:04.723 (11) [3, 4, 64, 4, 5, -45, 6, 67, -65, 456435, 4354]
参考文献
[2]JavaScript之对原生JavaScript对象的扩展初探
JavaScript之Array/数组小结的更多相关文章
- JavaScript 中Array数组的几个内置函数
本文章内容均参考<JavaScript高级程序设计第三版> 今天在看JavaScript书籍的时候,看到之前没有了解过的JavaScript中Array的几个内置函数对象,为了之后再开发工 ...
- JavaScript中Array(数组) 对象
JavaScript中Array 对象 JavaScript中创建数组有两种方式 (一)使用直接量表示法: var arr4 = []; //创建一个空数组var arr5 = [20]; // 创建 ...
- JavaScript string array 数组
Array类可以如下定义: var aValues = new Array(); 如果预先知道数组的长度,可以用参数传递长度 var aValues = new Array(20); -------- ...
- javascript之Array()数组函数讲解
Array()是一个用来构建数组的内建构造器函数.数组主要由如下三种创建方式: array = new Array() array = new Array([size]) array = new Ar ...
- JavaScript中Array数组的方法
查找: indexOf.lastIndexOf 迭代:every.filter.forEach.map.somereduce.reduceRight 用法: /* 1 查找方法: * arr.inde ...
- Javascript中Array(数组)对象常用的几个方法
Javascript中Array数组的几个常用方法 pop() --获取数组中末尾的元素 shift() --获取数组中首位元素 push() --在数组中末尾增加元素 slice() --按照下 ...
- JavaScript的json和Array及Array数组的使用方法
1.关于json JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于ECMAScript的一个子集.也可以称为数据集和数组类似,能够存数据! //Ar ...
- Javascript进阶篇——( JavaScript内置对象---下)--Array数组对象---笔记整理
Array 数组对象数组对象是一个对象的集合,里边的对象可以是不同类型的.数组的每一个成员对象都有一个“下标”,用来表示它在数组中的位置,是从零开始的数组定义的方法: 1. 定义了一个空数组: var ...
- JavaScript引用类型之Array数组的toString()和valueof()方法的区别
一.转换方法 1.在JavaScript中几乎所有对象都具有toLocaleString().toString和valueof()方法,因为,所有的对象都继承自Object,而前面所说的方法都是Obj ...
随机推荐
- ES6 Set & Map
ES6 Set & Map OK ES6 Map https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Globa ...
- java 里面的 native 方法
第一篇: 今天花了两个小时把一份关于什么是Native Method的英文文章好好了读了一遍,以下是我依据原文的理解. 一. 什么是Native Method 简单地讲,一个Native Meth ...
- Spark_RDD之RDD基础
1.什么是RDD RDD(resilient distributed dataset)弹性分布式数据集,每一个RDD都被分为多个分区,分布在集群的不同节点上. 2.RDD的操作 Spark对于数据的操 ...
- zookeeper 四字命令
zookeeper四字命令 ZooKeeper3.4.6支持某些特定的四字命令字母与其的交互.它们大多是查询命令,用来获取 ZooKeeper 服务的当前状态及相关信息.用户在客户端可以通过 te ...
- BZOJ4891 TJOI2017龙舟(Polllard-Rho)
对给定模数分解质因数后约分即可.依然常数巨大过不了. #include<iostream> #include<cstdio> #include<cmath> #in ...
- Codeforces Round #394 (Div. 2) C. Dasha and Password
C. Dasha and Password time limit per test 2 seconds memory limit per test 256 megabytes input standa ...
- emwin之在WM_INIT_DIALOG分支下使用带触发功能的函数的程序框架
@2018-08-29 [小记] 为避免在窗口创建时由于使用了带触发功能的函数导致执行一些在初始化过程中不允许的操作,特整理一个流程架构 --① 定义一个初始化完成的标志 unsigned ; --② ...
- MD5 SHA1 CRC32
md5: import hashlib md5 = hashlib.md5() md5.update(bytes('http://www.baidu.com',encoding="utf-8 ...
- coursera吴恩达 机器学习编程作业原文件 及我的作业
保存在github上供广大网友下载:点击 8个zip,原文件,没有任何改动. 另外,不定期上传我自己关于这门课的学习过程笔记和心得,有兴趣的盆友可以点击这里查看.
- Windows Boot Manager改成中文菜单
用管理员身份运行"命令提示符",依次执行以下命令 bcdedit /deletevalue {bootmgr} device bcdedit /deletevalue {bootm ...