美文网首页
JavaScript中数组和字符串的常用操作

JavaScript中数组和字符串的常用操作

作者: 土旦土旦 | 来源:发表于2017-10-21 15:39 被阅读0次

    数组

    • 添加元素
      • push()在数组末尾添加元素
      • unshift()在数组首位置添加元素
     var arr = [1, 2, 3];
     arr.push(4); // [1, 2, 3, 4]
     arr.unshift(0); //[0, 1, 2, 3]
    
    • 删除元素
      • pop()删除数组末尾元素
      • shift()删除数组首位置元素
     var arr = [1, 2, 3];
     arr.pop(); // [1, 2]
     arr.shift(); //[2, 3]
    
    • 删除,添加元素
      • splice(开始下标, 删除的个数)
      • splice(开始下标, 删除的个数, 替换的内容)
    var arr = [1, 2, 3, 4, 5];
    arr.splice((arr.length-1), 1); // pop()  [1, 2, 3, 4]
    arr.splice(0, 1); // shift()  [ 2, 3, 4, 5]
    arr.splice(1,2); // [1, 4, 5]
    arr.splice(2, 0, 'aa', 'e', 'r'); // [1, 2, 3, 'aa', 'e', 'r',  4, 5]
    arr.splice(0, 0, 'aa', 'e', 'r'); // 添加到首位  ['aa', 'e', 'r', 1, 2, 3, 4, 5]
    
    • 拼接数组
      • concat() 生成新数组,不改变原始数组
    var a = [1, 2, 3], b = [4, 5, 6], c = [7, 8, 9];
    var newArr = a.concat(b);
    var newArr2 = a.concat(b, c); //拼接多个数组
    
    • 连接数组中的元素,转化为字符串join()
    var str = arr.join(''); // 快速把数组转化为字符串
    
    • 反转数组
      • reverse() 操作的是原始数组
    var d = [1, 2, 3, 4];
    console.log(d.reverse()); // [4, 3, 2, 1]
    
    • 截取数组 slice(起始位置, 结束位置) //包头不包尾
      • 可以传递一个或两个参数
      • 如果参数是负数, 拿数组长度加上负数
      • 生成新的数组, 不修改原始数组
    var e = [1, 2, 3, 4, 5];
    var newArr1 = e.slice(1); // [2, 3, 4, 5]
    var newArr2 = e.slice(-4, -2); // (1, 3) [2, 3]
    
    • 迭代方法
    1. filter() 过滤
    var num = [1, 2, 3, 4, 3, 8, 9];
    // item, index形参,item是数组中的每个元素; index是数组元素的下标
    var filterFn = num.filter(function(item, index) {  
      console.log(item);
      return item>5;   
    });
    console.log(filterFn); // [8, 9]
    
    1. map() 再次处理数组中的元素
    var mapNum = num.map(function(item, index) {
      return item*2;
    });
    console.log(mapNum); //[2, 4, 6, 8, 6, 16, 18]
    
    1. forEach() 遍历(类似for循环)
    var eachNum = num.forEach(function(item, index) {
      console.log(item);   // 1 2 3 4 3 8 9 
    });
    
    • 归并方法 reduce()
    var reduceArr = [3, 4, 6, 8];
    var sum = reduceArr.reduce(function(prev, cur, index) {
      return prev + cur;
    });
    console.log(sum); // 21
    
    • 清空数组
      • 长度变0
      • 赋值空数组
      • 删除所有元素
      • splice()
    arr.length = 0;
    arr = [];
    while(arr1.length) {
      arr1.pop()
    }
    arr.splice(0, arr.length);
    

    字符串

    • 查找字符串
      • indexOf('指定内容') 找到第一个指定内容的下标
      • lastIndexOf('指定内容') 找到最后一个指定内容的下标
    str.indexOf('c')
    
    • 截取字符串
      • substring(开始下标, 结束下标) // 包头不包尾
      • slice // 用法同substring
      • substr() //接受一个或者两个参数,第一个参数指定子字符串的开始位置。第二个参数跟之前的方法有些区别,表示返回的字符个数。如果没有传递第二个参数,则将字符串的长度作为结束位置
        传递参数为负值时: substring()方法会把所有负值参数转换为0;
        slice()方法会将传入的负值与字符串长度相加;
        substr()方法会将负的第一个参数加上字符串的长度,而将负的第二个参数转换为0;
    str.substring(3,5);
    str.substring(2); // 一个参数,截取到最后
    
    • 切分字符串
      • split() 将切分后的内容保存在数组中
    str.split('');
    str.split('come');
    str.split(' ');
    
    • 大小写转换
    str.toLowerCase();
    str.toUpperCase();
    

    相关文章

      网友评论

          本文标题:JavaScript中数组和字符串的常用操作

          本文链接:https://www.haomeiwen.com/subject/fobvuxtx.html