数组方法 Array.prototype
Object.prototype
数组的值是有序的集合,每一个值叫做元素,每一个元素在数组中都有数字位置编号,也就是索引,js中数组是弱类型的,数组中可以含有不同类型的元素。数组元素甚至可以是对象或者其他数组
长度范围:1====2的23方-1
new Array(100)//undifind*100
arr[5]=10;
arr.length//6
push()
unshift()
shift()
pop()
var Arr=[1,true,undifind,{x:1},[1,2,3]];
Array.prototype
Array.prototype.join() 默认, 可以自定义-------将数组转换成字符串
demo:
创建一定长度的固定字符循环字符串
new Array(2).join("ab");//abab
new Array(100),创建长度为100的数组,每一个元素是undifind,join中会忽略undifind
Array.prototype.reverse=======将数组逆序,会改变原来的数组
Array.prototype.sort()========对数组进行排序(默认是按字符串进行排序,可以自定义排序的方法) 原数组被修改
Array.prototype.concat() 数组合并 原数组没有被修改
Array.prototype.slice()=====返回部分数组 左闭右开区间 支持负数 -1表示最后一个元素 -2表示倒数第二个元素 原数组不会改变
Array.prototype.splice()======数组拼接 修改原数组 可以接受两个参数 第二个参数表示删除元素的长度 返回被删除的元素
Array.prototype.forEach() 数组遍历 参数是函数 三个参数 1 是对应的元素 2 是下标 3 是遍历的数组本身 不会修改原来的数组
Array.prototype.map()数组映射 不会修改原来的数组
Array.prototype.filter() 数组过滤 返回符合要求的数组 不会修改原来的数组
Array.prototype.every() 返回 true false 数组判断 所有的元素都符合
Array.prototype.some() 返回true false 数组判断 部分元素符合就可以
Array.prototype.reduce() 将一个数组聚合为一个结果 与reduceRight的区别是默认是从数组从左到右 reduceRight是数组从右到左
Array.prototype.reduceRight()
demo:
获取数组的最大值
var arr=[30,40,3,20,10,9,8];
var max=arr.reduce(function(x,y){
return x>y?x:y;
});
可以指定初始化值
var max=arr.reduce(function(x,y){
return x>y?x:y;
},20);
返回数组arr与20只最大的数值
Array.prototype.indexOf()数组检索 可以指定开始检索的位置,第一个参数:需要检测的元素。第二个参数:开始检索的位置
Array.isArray() isArray是Array构造器上的函数,不是原型prototype上的方法,不能直接使用一个数组进行调用
Array.isArray([]);
数组方法 Array.prototype的更多相关文章
- 来自数组原型 Array.prototype 的遍历函数
1. Array.prototype.forEach() forEach() 是一个专为遍历数组而生的方法,它没有返回值,也不会改变原数组,只是简单粗暴的将数组遍历一次 参数: callback() ...
- JavaScript的数组方法(array)
数组方法: 1. concat() 合并数组 2. join() 将数组的元素拼接成字符串,并指定分隔符 3. push() 往数组末尾添加一个元素,并返回新的数组的长度 4. reverse( ...
- JS 数组方法 array数组声明 元素的添加和删除 等
声明数组 var arr1 = [1,2,3,4,5]; var arr2 = new Array(100); //声明长度为100的arr2数组. arr2=[]; arr2.length = 10 ...
- ES6的数组方法之Array.from
首先说说什么是数组:数组在类型划分上归为Object,属于比较特殊的对象,数组的索引值类似于对象的key值. 数组的几个注意点: 1.数组的长度是可读属性,不可更改,数组的长度根据索引最大值. 2.数 ...
- 【js实例】Array类型的9个数组方法,Date类型的41个日期方法,Function类型
前文提要:[js实例]js中的5种基本数据类型和9种操作符 Array类型的9个数组方法 Array中有9个数组方法: 1.检测数组 2.转换方法 3.栈方法 4.队列方法 5.冲排序方法6.操作方法 ...
- js数组方法扩展
/** * Created by Administrator on 2016/9/1. */ //数组去重 Array.prototype.unique = function(){ this.sort ...
- Javascript数组方法(译)
在JavaScript中,数组可以使用Array构造函数来创建,或使用[]快速创建,这也是首选的方法.数组是继承自Object的原型,并且他对typeof没有特殊的返回值,他只返回'object'. ...
- Javascript数组方法探究一二
1. Array.prototype.slice方法 数组的 slice 方法通常用来从一个数组中抽取片断.不过,它还有将“类数组”(比如arguments和HTMLCollection)转换为真 ...
- 前端总结·基础篇·JS(二)数组深拷贝、去重以及字符串反序和数组(Array)
目录 这是<前端总结·基础篇·JS>系列的第二篇,主要总结一下JS数组的使用.技巧以及常用方法. 一.数组使用 1.1 定义数组 1.2 使用数组 1.3 类型检测 二.常用技巧 2.1 ...
随机推荐
- 舆论的力量---数学建模初探(SI模型)
在高中时除了物理竞赛没有学习外,竞赛的五大学科剩下的四门均有所涉猎及参加,因而精力分散太多.因此下定决心大学时可以广泛涉猎知识,但是主攻的竞赛只能有两个ACM和MCM,如今虽然高考完挂,但学术之心尚存 ...
- SA模板
#include<cstdio> #include<algorithm> #include<cstring> using namespace std; ; char ...
- linux下部署一个JavaEE项目的简单步骤
部署项目的前提是准备好环境,包括:Java运行环境(JDK),Tomcat,Mysql数据库 1.首先将东西上传到服务器,我是在windows安装ssh工具(下载安装git即可http://gitfo ...
- Python基础教程笔记——第6章:抽象(函数)
(1)计算裴波那契数列: fbis=[0,1] num=int(input("please input the number")) for i in range(num-2): f ...
- make only output error/warning message( 编译时,只输出错误信息和警告信息)
make > /dev/null 这样,正常的信息被重定向输出到/dev/null,错误和警告信息会输出到标准错误设备(standard error,相对于标准输入/输出设备来说).
- 【转】php 之 array_filter、array_walk、array_map的区别
[转]php 之 array_filter.array_walk.array_map的区别 原文:https://blog.csdn.net/csdnzhangyiwei/article/detail ...
- Python()- 面向对象三大特性----多态
多态: python 生来支持多态白话:一种事物的多种形态 (动物可以继承给狗,也可以继承给猫) class Animal: pass class Dog(Animal): def attack(se ...
- poj3694+hdu2460 求桥+缩点+LCA/tarjan
这个题使我更深理解了TARJAN算法,题意:无向图,每添加一条边后文桥的数量,三种解法:(按时间顺序),1,暴力,每每求桥,听说这样能过,我没过,用的hash判重,这次有俩个参数(n->10w, ...
- 2016 ACM/ICPC 区域赛(北京) E 题 bfs
https://vjudge.net/problem/UVALive-7672 题意 输入一个五位数n 问由12345变到n的操作最少次数 不可达输出-1 有三种操作 1.交换相邻的位置 次数不 ...
- [Poj2411]Mondriaan's Dream(状压dp)(插头dp)
Mondriaan's Dream Time Limit: 3000MS Memory Limit: 65536K Total Submissions: 18096 Accepted: 103 ...