zoukankan      html  css  js  c++  java
  • javascript数组及其操作(zz)

    javascript数组及其操作

    p_large_dT1V_15bc0000a1962d13本文介绍如下几个方面的内容:
    1.如何创建数组
    2.如何对数组进行操作(添加,删除,读取)
    3.数组常见方法和属性
    如何创建一个数组,一般地根据初始化设定简单分为3种:
    1.单纯创建数组:
    var arr=new Array();
    要点:用new关键字创建数组对象Array(),Array()对象是一个本地类,可以用new创建一个对象后使用
    2.创建数组的同时规定数组大小:
    var arr=new Array(10);//这里就创建了一个初始化大小为10的数组
    注意:当使用数组大小操作初始化大小时,数组会自动被撑大,不会像C语言那样发生错误.动态增长是js数组的一个性质.另外,js中支持最大数组长度为
    4294967295
    3.直接初始化:
    var arr=new Array("love","hate","pain");//这里就直接初始化了数组
    或var arr=["happy","cute","scare"];//括号也可以声明一个数组对象
    当然,类似C语言,可以定义2维3维和多维的数组,例如:

    数组的属性:length
    arr.length返回数组arr的长度,常见于循环中对数组的遍历,比如:
    for(var i=0;i执行部分
    }
    数组元素的访问: arr[index],其中index表示索引即数组基数,从0开始,共有arr.length个元素.比如: arr[0]访问第一个数组元素,arr[1]访问第二个数组元素....依
    次类推 数组的操作方法:先概览下下面的这些操作数组常用的方法(13个)
    toString(),valueOf(),toLocalString(),join(),split(),slice(),concat(),
    pop(),push(),shift(),unshift(),sort(),splice()
    下面逐一分析这些方法的功能和用法.
    toString(),valueOf(),toLocalString():
    功能:返回数组的全部元素
    注:数组名也可以返回整个数组
    代码:
        var m=["am","bm","cm"];//用括号声明一个数组对象
        alert(m.toString());//toString()返回数组对象的所有内容,用逗号分割,即am,bm,cm
        alert(m.valueOf());//valueOf()也返回数组对象的所有内容
        alert(m.toLocaleString());//toLocaleString()也返回数组对象的所有内容,但有地区语言区别,暂不研究
        alert(m);//数组名也返回数组对象的所有内容
    join():
    功能:把数组各个项用某个字符(串)连接起来,但并不修改原来的数组
    代码:
        var m=["am","bm","cm"];//用括号声明一个数组对象
        var n=m.join("---");//用---连接am,bm,cm.
        alert(m.toString());//m并没有被修改,返回am,bm,cm
        alert(n);//n是一个字符串,为am---bm---cm
    split():
    功能:把一个字符串按某个字符(串)分割成一个数组,但不修改原字符串
    代码:
        var str="I love maomao,I am caolvchong";
        var arr=str.split("o");//按字符o把str字符串分割成一个数组
        alert(arr);//输出整个数组
    slice():返回某个位置开始(到某个位置结束)的数组部分,不修改原数组
    代码:
        var m=["am","bm","cm","dm","em","fm"];
        var n=m.slice(2);//返回第二个元素bm后面的元素,即cm,dm,em,fm
        var q=m.slice(2,5);//返回第二个元素后到第五个元素,即cm,dm,em
        alert(n);
        alert(q);
    数组对象的栈操作:
    push():数组末尾添加一个项
    pop():删除数组最后一个项
    代码:
        var m=["am","bm","cm","dm","em","fm"];
        m.push("gm");//在数组末尾添加元素gm
        alert(m);
        m.pop();//删除数组最后一个元素gm
        alert(m);
    数组对象的队列操作:
    unshift():数组头添加一个项
    shift():删除数组第一个项
    代码:
        var m=["am","bm","cm","dm","em","fm"];
        m.unshift("gm");//在数组第一个元素位置添加元素gm
        alert(m);
        m.shift();//删除数组第一个元素gm
        alert(m);
    sort():数组按字符的ASCII码进行排序,修改数组对象
    注:即便是数字数组,也将转化为字符串来进行比较排序
    代码:
        var m=["am","fm","gm","bm","em","dm"];
        m.sort();//按字母序排序
        alert(m);
    concat():在数组尾添加元素,但不修改数组对象
    代码:
        var m=["am","bm"]
        var n=m.concat("cm");//添加一项cm,并且赋予新数组对象
        alert(m);//原数组没有被修改
        alert(n);//输出新数组对象
    splice():在数组的任意位置进行添加,删除或者替换元素,直接修改数组对象
    细节:
    splice()有三个参数或三个以上参数,前两个是必须的,后面参数是可选的
    进行添加:splice(起始项,0,添加项)
    进行删除:splice(起始项,要删除的项个数)
    进行替换:splice(起始项,替换个数,替换项) 这个其实是添加删除的共同结果
    代码:
        var m=["am","bm"]
        m.splice(1,0,"fm","sm");//在第一项后面添加fm和sm,返回am,fm,sm,bm
        alert(m);
        m.splice(2,1);//删除第二项后面一项(即第三项sm,返回am,fm,bm)
        alert(m);
        m.splice(2,1,"mm");//替换第二项后面一项(即第三项,返回am,fm,mm)
        alert(m);

  • 相关阅读:
    条款27: 如果不想使用隐式生成的函数就要显式地禁止它
    条款26: 当心潜在的二义性
    条款23: 必须返回一个对象时不要试图返回一个引用
    条款22: 尽量用“传引用”而不用“传值”
    条款21: 尽可能使用const
    【转】我的算法学习之路
    【转】基于Linux下的TCP编程
    条款十九: 分清成员函数,非成员函数和友元函数
    【c++】C语言中volatile关键字的作用
    innerHTML,innerText,outHTML,outText区别
  • 原文地址:https://www.cnblogs.com/miraclespace/p/3712422.html
Copyright © 2011-2022 走看看