zoukankan      html  css  js  c++  java
  • js数组

    1、什么是数组

    数组就是一组数据的集合

    其表现形式就是内存中的一段连续的内存地址

    数组名称其实就是连续内存地址的首地址

    2、关于js中的数组特点

    数组定义时无需指定数据类型

    数组定义时可以无需指定数组长度

    数组可以存储任何数据类型的数据(比如说一个元素保存整型,一个元素保存字符串型,这个在JS中是可以的)

    3、数组的创建

    var arrayObj = new Array(); //创建一个数组

    var arrayObj = new Array([size]); //创建一个数组并指定长度,注意不是上限,是长度

    var arrayObj = new Array([element0[, element1[, ...[, elementN]]]]); 创建一个数组并赋值

    4、数组方法

    1 join

    将数组中的每一个元素用指定的字符串连接起来,返回字符串

    var arr = ["a","b","c"];
    alert(arr.join(","));//返回a,b,c

    2 slice

    接受一个或两个参数,参数对应的是要返回项的起始位置和结束位置,若只有一个参数,该方法返回从参数指定位置到数组结尾的所有项,如果有两个参数则返回起始位置到结束位置之间的项但不包括结束位置项,返回的结果是一个新的数组,原数组不变

    var arr = ['A', 'B', 'C', 'D', 'E', 'F', 'G'];
    alert(arr.slice(0, 3)); // 从索引0开始,到索引3结束,但不包括索引3: ['A', 'B', 'C']
    alert(arr.slice(3)); // 从索引3开始到结束: ['D', 'E', 'F', 'G']

    3 push

    向数组末尾添加若干元素,返回添加元素后数组的长度

    var arr = [1,2];
    alert(arr.push('a','b'));//返回数组的长度2

    4 pop

    删除数组末尾最后一个元素,返回被删除的元素,若数组为空则返回undefined

    var arr = [1,2,3];
    alert(arr.pop());//返回被删除的元素3
    var arr1 = [];
    alert(arr1.pop());//返回undefined

    5 unshift

    在数组头部添加若干元素,返回添加元素后数组的长度

    var arr = [1,2,3];
    alert(arr.unshift("a","b"));//返回数组的长度5

    6 shift

    删除数组头部的第一个元素,并返回被删除的元素,若数组为空则返回undefined

    var arr = [1,2,3];
    alert(arr.shift());//返回头部被删除的项1

    7 sort

    对数组进行排序,返回排序以后的数组,默认把所有元素转化为字符之后再进行排序,排序以后会改变原数组

    var arr = ["3","2",11];
    alert(arr.sort());//返回11,2,3

    8 reverse

    对数组中的数据进行反转,返回反转后的数组

    var arr = ["xu","biesuohua"];
    alert(arr.reverse());

    9 splice

    从指定位置删除若干元素,然后再从该位置添加若干元素,结果返回被删除的元素,第一个参数表示起始删除的位置,第二个参数表示要删除元素的个数,之后的元素表示要添加的元素

    var arr = ["a","b","c"];
    alert(arr.splice(1,2,"d","e"));//从位置1开始删除2个元素,在1位置添加"d","e"两个元素,返回"b","c"
    alert(arr);//arr数组变为a,d,e
    alert(arr.splice(0,3));//从位置0开始,删除3个元素,返回"a","d","e"
    alert(arr);//arr数组为空

    10 concat

    把当前数组与另一个数组连接起来,并返回新的元素,原来的数组不被改变,concat可以接收任意个元素和数组,并把数组拆开放入新的数组中

    var arr = ["a","b","c"];
    alert(arr.concat([1,2,3]));//数组arr不变,返回["a","b","c",1,2,3]
    alert(arr.concat([1,2,[3,4]]));//返回["a","b","c",1,2,3,4]

    11 map

    对数组中的每一项运行函数,返回函数运行结果组成的数组,函数的参数是一个函数,而该函数接收三个参数:数组当前值,数组索引、数组

    var arr = [1,2,3,-1];
    alert(arr.map(function(x) {
          return x * x;
    }
    ));//返回1,4,9,1

    12 filter

    对数组中的每一项运行函数,返回该函数返回true的元素组成的数组

    var arr = [1,-3,2,-4,-6];
    var newArr = arr.filter(function(x){
        if(x>=0){
            return true;
        }else{
            return false;
        }
    })
    alert(newArr)//返回1,2

    13 toString

    该方法返回由数组中每个值的字符串以逗号分隔而拼接的字符串,数组的每一项调用的是toString

    var arr = [1,2];
    alert(arr.toString());//返回1,2

    14 valueOf

    调用该方法返回的依旧是数组

    var arr = [1,2];
    alert(arr.valueOf());//alert返回的都是字符串,故返回1,2,而arr.valueOf()是数组
    alert(arr.valueOf() instanceof Array);//返回true

    15 toLocaleString

    该方法返回一个数组值以逗号分隔的字符串,与toString不同的是数组的每一项调用的是toLocaleString

    var arr = [1,2];
    alert(arr.toLocaleString());//返回1,2
  • 相关阅读:
    Decode函数说明以及纵横表的转化
    数据库系统实现学习笔记二(数据库关系建模)--by穆晨
    数据库系统实现学习笔记一(数据库需求与ER建模)--by穆晨
    数据库—锁以及死锁的处理
    关系型数据库和非关系型数据库的区别
    数据库的一些基本概念(键、事务)
    ns2.34 移植MFLOOD协议时出现的问题
    第6章 函数
    第4章 表达式
    字符数组 & 字符串
  • 原文地址:https://www.cnblogs.com/txzysfy/p/8244637.html
Copyright © 2011-2022 走看看