zoukankan      html  css  js  c++  java
  • js向数组和map添加元素

     

     

    数组:

    unshift:将参数添加到原数组开头,并返回数组的长度 

    pop:删除原数组最后一项,并返回删除元素的值;如果数组为空则返回undefined 
    push:将参数添加到原数组末尾,并返回数组的长度 
    concat:返回一个新数组,是将参数添加到原数组中构成的 
    splice(start,deleteCount,val1,val2,...):从start位置开始删除deleteCount项,并从该位置起插入val1,val2,... 
    reverse:将数组反序 
    sort(orderfunction):按指定的参数对数组进行排序 
    slice(start,end):返回从原数组中指定开始下标到结束下标之间的项组成的新数组


    详细:
    1、数组的创建
    var arrayObj = new Array(); //创建一个数组
    var arrayObj = new Array([size]); //创建一个数组并指定长度,注意不是上限,是长度
    var arrayObj = new Array([element0[, element1[, ...[,elementN]]]]); 创建一个数组并赋值
     

      要说明的是,虽然第二种方法创建数组指定了长度,但实际上所有情况下数组都是变长的,也就是说即使指定了长度为5,仍然可以将元素存储在规定长度以外的,注意:这时长度会随之改变。
    2、数组的元素的访问
    var testGetArrValue=arrayObj[1]; //获取数组的元素值
    arrayObj[1]= "这是新值"; //给数组元素赋予新的值
    3、数组元素的添加
    arrayObj. push([item1 [item2 [. . . [itemN ]]]]);//将一个或多个新元素添加到数组结尾,并返回数组新长度
    arrayObj.unshift([item1 [item2 [. . . [itemN ]]]]);//将一个或多个新元素添加到数组开始,数组中的元素自动后移,返回数组新长度
    arrayObj.splice(insertPos,0,[item1[, item2[, . . .[,itemN]]]]);//将一个或多个新元素插入到数组的指定位置,插入位置的元素自动后移,返回""。
    4、数组元素的删除
    arrayObj.pop(); //移除最后一个元素并返回该元素值
    arrayObj.shift(); //移除最前一个元素并返回该元素值,数组中元素自动前移
    arrayObj.splice(deletePos,deleteCount);//删除从指定位置deletePos开始的指定数量deleteCount的元素,数组形式返回所移除的元素
    5、数组的截取和合并
    arrayObj.slice(start, [end]); //以数组的形式返回数组的一部分,注意不包括 end 对应的元素,如果省略end 将复制 start 之后的所有元素
    arrayObj.concat([item1[, item2[, . . . [,itemN]]]]);//将多个数组(也可以是字符串,或者是数组和字符串的混合)连接为一个数组,返回连接好的新的数组
    6、数组的拷贝
    arrayObj.slice(0); //返回数组的拷贝数组,注意是一个新的数组,不是指向
    arrayObj.concat(); //返回数组的拷贝数组,注意是一个新的数组,不是指向
    7、数组元素的排序
    arrayObj.reverse(); //反转元素(最前的排到最后、最后的排到最前),返回数组地址
    arrayObj.sort(); //对数组元素排序,返回数组地址
    8、数组元素的字符串化
    arrayObj.join(separator); //返回字符串,这个字符串将数组的每一个元素值连接在一起,中间用separator 隔开。
    toLocaleString 、toString 、valueOf:可以看作是join的特殊用法,不常用

    map:
    map.obj=obj2; //添加一个key为obj,值为obj2
    map[obj] = obj2; //添加一个key为obj,值为obj2
     
    var map={
        key1:'abc',
        key2:'def'
    };

    这样定义即可。动态赋值如下:

    map.key3='12';

    如果key也是动态的,则如下处理

    var key='key4';
    map[key]='34';

    注意:在JavaScript语言中,key的值只能是字符串,不能是其它的。

    map遍历

    console.log(jsonData);//火狐控制台打印输出: Object { fileNumber="文件编号", fileName="文件名称"}

    for(var key in jsonData)
    console.log("属性:" + key + ",值:"+ jsonData[key]);
    }

    打印输出:
    属性:fileNumber, 值:文件编号
    属性:fileName, 值:文件名称

    1.01^365=37.78 0.99^365=0.03
  • 相关阅读:
    疫情控制
    2020 CSP-J 多校赛 Day 2 T2 题解
    三校联考-水题狂欢信心赛
    QBXT 提高组储备营 2020.夏 游记
    【题解】(我出的题)XM捡面筋
    【题解】P4025 [PA2014]Bohater
    【题解】1644:【例 4】佳佳的 Fibonacci
    【题解】CF1165F2 Microtransactions (hard version)
    P2261 [CQOI2007]余数求和
    OVO——扶咕咕的20道CF
  • 原文地址:https://www.cnblogs.com/onesea/p/15543886.html
Copyright © 2011-2022 走看看