javascript-Array数组总结

1.构造函数

    new Array();
    new Array(size);
    new Array(ele0,ele1,ele2,...,elen);

参数

  size:设定数组元素个数,返回数组的length等于size

2.属性

  length:等于数组中最后一个元素的序号加一,改变length值会裁减或扩充数组.

3.方法

  concat():把元素衔接到数组中

    var a=[1,2,3];
    a.concat(4,5);                    //返回[1,2,3,4,5]
    a.concat([4,5]);                //返回[1,2,3,4,5]
    a.concat([4,5],[6,7]);            //返回[1,2,3,4,5,6,7]
    a.concat(4,[5,[6,7]]);            //返回[1,2,3,4,5,[6,7]]

  every():测试断言函数是否对每个数组元素都为真

//检测数组 ages 的所有元素是否都大于 18 :
var ages = [32, 33, 16, 40];

function checkAdult(age) {
    return age >= 18;
}

function myFunction() {
    document.getElementById("demo").innerHTML = ages.every(checkAdult);
}

    输出结果为:false

  some():测试是否至少有一个数组元素能断言函数为真,返回布尔类型及true/false

    var a = [1,2,3,4,5];
    a.some(function(x){return x%2===0;})// =>true
    a.some(isNaN)// =>false

  filter():返回满足断言函数的数组元素

// Define a callback function.
function CheckIfPrime(value, index, ar) {
    high = Math.floor(Math.sqrt(value)) + 1; 

    for (var div = 2; div <= high; div++) {
        if (value % div == 0) {
            return false;
        }
    }
    return true;
} 

// Create the original array.
var numbers = [31, 33, 35, 37, 39, 41, 43, 45, 47, 49, 51, 53]; 

// Get the prime numbers that are in the original array.
var primes = numbers.filter(CheckIfPrime); 

document.write(primes);
// Output: 31,37,41,43,47,53
    var b = [5,4,3,2,1];
    smallvalues = b.filter(function(x){regurn x < 3}); //[2,1]
    everyother = b.filter(function(x,i){return i%2 == 0}); //[5,3,1]

  forEach():从头至尾遍历数组 三个参数(数组元素,数组元素的索引,数组元素本身)

    var data = [1,2,3,4,5];
    //计算元素和值
    var sum = 0;
    data.forEach(function(value){sum += value;}); //sum => 15
    //每个数组元素的值加1
    data.forEach(function(v,i,a){a{i} = v + 1;}); //data => [2,3,4,5,6]

  indexOf()/lastIndexOf():在数组中查找匹配元素的索引下标 2个参数(搜索值,开始索引的下标);不可以带function,未找到返回 -1

    //在数组中插好所有出现的x,并返回一个包含匹配索引的数组
    function finally(a,x){
    var results = [], //
        len = a.length,//
        pos = 0;//
    while(pos < len){
        pos = a.indexOf(x,pos);
        if(pos === -1) break;
        results.push(pos);
        pos = pos +1;
    }
    return results;
  }

  join():将数组的所有元素转化为字符串,并衔接起来(是split()的逆向操作)

  var a = [1,2,3];
  a.join();    // => "1,2,3"
  a.join(" ");    //=> "1 2 3"
  a.join("");    //=> "123"
  var b = new Array(10);
  b.join("-");    //=>"---------":9个连续的字符串

  split():将字符串分割成若干块来创建一个数组 参数(拆分根据的字符,拆分后的数组的保留位数)

    "2:3:4:5".split(":")    //将返回["2", "3", "4", "5"]
    "|a|b|c".split("|")    //将返回["", "a", "b", "c"]
    //把单词分割为字母,或者把字符串分割为字符,可使用下面的代码:
    "hello".split("")    //可返回 ["h", "e", "l", "l", "o"]
    //若只需要返回一部分字符,请使用 howmany 参数:
    "hello".split("", 3)    //可返回 ["h", "e", "l"]

  map():将调用的数组的每个元素传递给指定的函数,并返回一个数组,他包含该函数的返回值 参数(function(数组的元素))

    a[1,2,3];
    b = a.map(function(x){
        return x*x;
    });

  pop():删除并返回数组的最后一个元素,减小数组长度

  shift():把数组的第一个元素从其中删除,并返回第一个元素的值。减小数组长度

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.shift()
console.log(fruits);
//结果:Banana, Orange, Apple

  unshift():在数组头部插入元素并把已存在的元素向后移动 参数(value,...,n) 返回值:数组的新长度

    var a = [];
    a.unshift(1);// =>a:[1]        返回:1
    a.unshift(22);// =>a:[22,1]        返回:2
    a.shift();// =>a:[1]        返回:22
    a.unshift(33,[4,5]);// =>a:[33,[4,5],1]        返回:3

  push():在数组尾部添加一个或多个严肃,并返回数组新的长度

    var stack = [];
    stack.push(1,2);    //stack: [1,2]
    stack.pop();        //stack: [1]
    stack.push(3);        //stack: [1,3]
    stack.pop();        //stack: [1]
    stack.push([4,5]);    //stack: [1,[4,5]]
    stack.pop();        //stack: [1]
    stack.pop();        //stack: []

  reduce():从数组的元素中,计算出一个值 参数(包含返回值得函数,初值[临时使用,第一次使用初值,二次以后使用第一个参数的返回值替换])

  reduceRight():同上,不过顺序相反,从右至左处理数组

    var a = [1,2,3,4,5];
    var sum = a.reduce(function(x,y){return x+y},0);//数组求和
    var produce = a.reduce(function(x,y){return x*y },1);//数组求积
    var max = a.reduce(function(x,y){return x>y?x:y});//求最大值

  reverse():在原数组中颠倒数组元素的顺序

    var a = [1,2,3];
    a.reverse().join(); // => 3,2,1 现在的数组a=[3,2,1]

  sort():将数组排序并返回排序后的数组,不带参数调用sort()时默认按照字母排序

    var a = new Array("banana","cherry","apple");
    a.sort();
    var s = a.join(",");//=>s == "apple,banana,cherry"

  slice():返回数组的一部分 参数(开始位置,结束位置[不包含结束位置]) 若只有一个参数则从参数位置开始到数组结尾的所有元素 负数则是倒数,比如-1是倒数第一个,-3是倒数第三个

    var a = [1,2,3,4,5];
    a.slice(0,3);// =>[1,2,3]
    a.slice(3);    // =>[4,5]
    a.slice(1,-1);// =>[2,3,4]
    a.slice(-3,-2);// =>[3]

  splice():插入,删除或替换数组元素 参数(指定插入或删除的起始位置,指定了从数组删除元素的个数,若省略则从开始位置到结尾都被删除) 返回一个由删除元素组成的数组,没有删除就返回空数组

    var a = [1,2,3,4,5,6,7,8];
    a.splice(4);//=>返回[5,6,7,8];a是[1,2,3,4]
    a.splice(1,2);//=>返回[2,3];a是[1,4]
    a.splice(1,1);//=>返回[4];a是[1]

      前两个参数指定了需要删除的数组元素,第三N多个参数指定了需要插入到数组中的元素,从第一个参数指定的位置开始插入

    var a = [1,2,3,4,5];
    a.splice(2,0,‘a‘,‘b‘);// =>返回[];a是[1,2,‘a‘,‘b‘,3,4,5]
    a.splice(2,2,[1,2],3);// =>返回[‘a‘,‘b‘]; a是[1,2,[1,2],3,3,4,5]

  toLocaleString():将数组转换为本地化字符串

  toString():将数组转化为字符串

  

时间: 2024-10-01 11:22:12

javascript-Array数组总结的相关文章

JavaScript Array 数组方法汇总

JavaScript Array 数组方法汇总 1. arr.push() 从后面添加元素,返回值为添加完后的数组的长度 var arr = [1,2,3,4,5] console.log(arr.push(5)) // 6 console.log(arr) // [1,2,3,4,5,5] 2.arr.unshift() 从前面添加元素, var arr = [1,2,3,4,5] console.log(arr.unshift(2)) // 6 console.log(arr) //[2,1

JavaScript——Array 数组对象

数组方法: 关于slice: 关于sort: >arrayObject.sort(方法函数) 方法函数:可选,规定排序顺序,必须是函数. 如果不指定<方法函数>,则按unicode码顺序排列: 如果指定<方法函数>,则按<方法函数>所指定的排序方法排序. >方法函数: 该函数要比较两个值,然后返回一个用于说明这两个值相对顺序的数字. 比较函数应该具有两个参数a,b,其返回值如下: 若返回值<=-1,则表示A在排序后的序列中出现在B之前. 若返回值>

javascript Array 数组的迭代方法

javascript迭代的方法 //filter() 利用指定的函数确定是否返回数组中包涵的某一项 var num = [1,2,3,4,5,6,12]; num.filter(function(item, index, array){ return (item > 2); //[3, 4, 5, 6, 12] }); //map() 返回一个数组,数组中每一项都是在原始数组中的对应项上运行传入参数的结果 var num = [1,2,3,4,5,4,3,2,1]; num.map(functi

JavaScript Array数组对象

<DOCTYPE html> <html> <head> <title>数组</title> </head> <body> <script type="text/javascript"> //1.无参构造函数,创建一空数组 // var a1=new Array(1,2,3,4); //document.write(a1) var a = new Array(); a[0] = "

javascript Array数组详解 各种方法

1.数组的声明方法(1): arrayObj = new Array(); //创建一个数组.复制代码 代码如下: var arr1 = new Array(); (2):arrayObj = new Array([size]) 创建一个数组并指定长度,注意不是上限,是长度.复制代码 代码如下: var a = new Array(5); (3):arrayObj = new Array([element0[, element1[, ...[, elementN]]]]) 创建一个数组并赋值.复

javascript Array数组常用方法学习与总结

<script> var a=[1,2,3,4]; document.body.innerHTML='<b>'+a.join()+'</b>'+'</br>'; document.write('<b>'+typeof(a.join(' '))+'</b>'+'</br>'); document.write('<b>'+a.join(' ')+'</b>'+'</br>'); docume

JavaScript中数组Array方法详解

ECMAScript 3在Array.prototype中定义了一些很有用的操作数组的函数,这意味着这些函数作为任何数组的方法都是可用的. 1.Array.join()方法 Array.join()方法将数组中所有元素都转化为字符串并连接在一起,返回最后生成的字符串.可以指定一个可选的符号或字符串在生成的字符串中来分隔数组的各个元素.如果不指定分隔符,默认使用逗号.注意:此方法不会改变原始数组 var arr = ['a', 'b', 'c']; console.log(arr.join());

JavaScript Array(数组)对象

一,定义数组 数组对象用来在单独的变量名中存储一系列的值. 创建 Array 对象的语法: new Array(); new Array(size); new Array(element0, element1, ..., elementn); 参数 参数 size 是期望的数组元素个数.返回的数组,length 字段将被设为 size 的值. 参数 element ..., elementn 是参数列表.当使用这些参数来调用构造函数 Array() 时,新创建的数组的元素就会被初始化为这些值.它

思维导图(自己整理,希望对大家有用):JavaScript函数+canvas绘图+Array数组

1.javascript函数: 2.Array数组: 3.canvas绘图:

Javascript中的Array(数组) 、{}(映射) 与JSON解析

做网页总会使用javascript,使用javascript总会使用JSON.最近用到一下,就写写. 下面是总结: 1.将javascript中的Array和{}转化为json字符串可以使用json2.js,源码地址https://github.com/douglascrockford/JSON-js. 2.将json字符串转为javascript对象,可以使用javascript自带的eval函数. 3.javascript中可以使用typeof查看变量的类型. 4.要访问json字段,必须是