• JS数据结构 数据属性和方法


    数组和字符串相互转换: join() 和split()----split(:将字符串转为数组,传入参数指明以什么作为分隔符let str = "Hello";let arr = str.split("");console.log(arr);//[ 'H', 'e', 'l', 'l', 'o' ]let arr2 = str.split("l");

    console.log(arr2);//[ 'He', '', 'o' ]-------join():将数组转为字符串,可以传入分隔符作为参数let arr = [1,2,3];let str = arr.join("");console.log(str);//123let str2 = arr.join(",");console.log(str2);//1,2,3

    数组相关方法:

    splice():这个方法非常的厉害,可以实现对数组的3种类型的操作:删除,插入和替换,相当于是增删改操作都可以用这个方法来实现。删除:可以删除任意数量的元素,只需要指定2个参数:要参数的第一项位 置和要删除的项数。let arr = [1,2,3,4,5,6,7,8,9,10];//从下标为3的元素开始删除,删除5个元素/ /将删除的元素返回给i let i = arr.splice(3,5);
    console.log(i);//[ 4, 5, 6, 7, 8 ]
    console.log(arr);//[ 1, 2, 3, 9, 10 ]插入:可以向任意位置插入任意数量的元素。只需要提供3个参数:起始位置,0(要 删除的项目),要插入的项目。let arr = [1,2,3,4,5,6,7,8,9,10];//从下标为3的元素之前开始插入let i = arr.splice(3,0,"red","blue");
    console.log(i);//[]
    console.log(arr);
    //[ 1, 2, 3, 'red', 'blue', 4, 5, 6, 7, 8, 9, 10 ]替换:替换的原理在于插入的时候同时进行删除,这样就实现了替换功能let arr = [1,2,3,4,5,6,7,8,9,10];//从下标为3的元素之前开始插入//插入多少,刚好就删除多少 let i = arr.splice(3,2,"red","blue");
    console.log(i);//[ 4, 5 ]
    console.log(arr);
    //[ 1, 2, 3, 'red', 'blue', 6, 7, 8, 9, 10 ]

    slice(:该方法可以接收一个或者两个参数,代表返回项的起始和结束位置。一个参数:那就代表起始位置,返回从指定的起始位置到数组末尾的所有项目两个参数:那就代表从指定的起始位置到指定的末尾位置之间的项,但是不包括结束位置的项注意: slice()方 法不会影响原始数组let arr = [1,2,3,4,5,6,7,8,9,10];
    //一个参数݇
    let i = arr.slice(3);
    console.log(i);//[ 4, 5, 6, 7, 8, 9, 10 ]
    console.log(arr);//[ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ]
    //两个参数
    let j = arr.slice(2,6);
    console.log(j);//[ 3, 4, 5, 6 ]
    console.log(arr);//[ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ]如果传入的是负数,则用数组长度加上该数来确定相应的位置let arr = [1,2,3,4,5,6,7,8,9,10];
    //一个参数
    let i = arr.slice(-3);//等价于slice(7)
    console.log(i);//[ 8, 9, 10 ]
    //两个参数
    let j = arr.slice(-6,-2);//等价于slice(4,8)
    console.log(j);//[ 5, 6, 7, 8 ]
    //不满住条件返回空数组
    let k = arr.slice(-2,-6);//等价于slice(8,4)
    console.log(k);//[]

    concat():该方法是先创建当前数组的一个副本,然后将接收到的参数添加到副本的末尾,最后返回新构建的数组,而原本的数组不会变化。let arr = [1,2,3];
    let arr2 = arr.concat("red","blue");
    console.log(arr);//[ 1, 2, 3 ]
    console.log(arr2);//[ 1, 2, 3, 'red', 'blue' ]

    删除方法:

    ECMAScript中专门]提供了push0和pop0方法,用来实现类似栈的行为。let arr = [];
    let i = arr.push("red","blue");
    console.log(arr);//[ 'red', 'blue' ]
    console.log(i);//2
    let j = arr.pop();
    console.log(arr);//[ 'red' ]
    console.log(j);//blue 注意push(方法推入元素的时候是从右往左边推入的,如下:let arr = [];
    arr.push("red","blue","pink");
    console.log(arr);在ECMAScript中提供了shift()方法, 该方法可以去除数组中第一个元素并且返回该元素。利用shift(和push0方法就可以实现从右往左的队列//从右往左的队列
    let arr = [];
    arr.push("red","green","pink");
    let item = arr.shift();
    console.log(item);//red
    console.log(arr);//[ 'green', 'pink' ]如果要实现从左往右的队列,可以使用unshift(方 法和pop0方法的配合。unshift(方 法的作用是在数组开头推入一个元素//从左往右的队列
    let arr = [];
    arr.unshift("red","green","pink");
    let item = arr.pop();
    console.log(item);//pink
    console.log(arr);//[ 'red', 'green' ]---------------push()和pop()可以算是- -组方法,作用分别是在数组尾部推入和弹出元素。unshift()和shift(可以算是-组方法,作用分别是在数组头部推入和弹出元素。推入的时候可以一次性推入多个元素,返回的是新数组的长度。弹出的时候- -次只能弹出一个元素,返回的是弹出的那个元素

    数组相关属性:

    length:返回数组元素的个数let arr = [1,2,3,4,5];
    console.log(arr.length);//5 我们利用此属性,可以快速的清空数组,这种方法比使用重新赋值的效率要高些,如下:let arr = [1,2,3,4,5];
    arr.length = 0;
    console.log(arr);//[]其实我们使用length属性就是可以随意的对数组的长度进行操控let arr = [1,2,3,4,5];
    arr.length = 3;
    console.log(arr);//[1,2,3]

  • 相关阅读:
    UVA 10692
    XCODE插件 之 Code Pilot 无鼠标化
    VC版超级记事本
    抓包函数-pcap_next
    通过PowerShell卸载全部的SharePoint 2010 解决方式
    typedef和#define的差别——————【Badboy】
    一个简单演示样例来演示用PHP訪问表单变量
    怎样隐藏Windows7 系统保留分区
    2016 360笔试题------找第一个仅仅出现一次的字符
    Eclipse中Easy Shell插件配置PowerCmd
  • 原文地址:https://www.cnblogs.com/dazhongma/p/11400447.html
Copyright © 2020-2023  润新知