1、数组

增删改查

    var arr = [1, 2, 3, 4, 5];
    // arr.push(18); // 添加数组后面 更改长度
    // arr.unshift(12); // 添加数组前面
    // arr.pop(); // 删除数组最后一个元素  返回该删除的值  更改数组长度
    // arr.shift(); // 删除数组第一个元素
    // arr.splice(2,1); // 从索引2开始删除一个元素
    // arr.splice(2,0,14); // 在索引2的位置添加数值
    console.log(arr);

2、数组合并

    // 数组合并方法
    // var vegetables = ['parsnip', 'potato'];
    // var moreVegs = ['celery', 'beetroot'];
    // // 将第二个数组融合进第一个数组
    // // 相当于 vegetables.push('celery', 'beetroot');
    // Array.prototype.push.apply(vegetables, moreVegs);
    // console.log(vegetables); 
    let arr1 = ["a", "b", "c"];
    let arr2 = ["d", "e", "f"];

    let arr3 = arr1.concat(arr2); // arr1 在前 同时也可以合并非数组

    console.log(arr3);

 

3、通过数组push 为对象添加属性

    // 通过数组push为对象添加属性
    var obj = {
        length: 0,
        addElem: function addElem(elem) {
            // obj.length is automatically incremented 
            // every time an element is added.
            [].push.call(this, elem);
        }
    };
    // Let's add some empty objects just to illustrate.
    obj.addElem({'name':'1233'});
    obj.addElem({});
    console.log(obj.length); // 2
    console.log(obj);
    // {0: {…}, 1: {…}, length: 2, addElem: ƒ}
    // 0:{name: "1233"}
    // 1:{}
    // addElem:ƒ addElem(elem)
    // length:2
    // __proto__:Object
    </script>

 4、数组与字符串相互转化 join()  split()

    var arr = [1, 2, 3, 4, 5];
    arr = arr.join('') // 数组转化字符串
    console.log(arr);

    var str = '122234455';
    var strArr = str.split('');
    console.log(strArr);
    //(9) ["1", "2", "2", "2", "3", "4", "4", "5", "5"]

 

5、字符串截取  substring slice  substr

    var anyString = "Mozilla";
    console.log(anyString.substring(0, 3));
    console.log(anyString.substring(3, 0));
    // 即使截取负数或NaN 都视为0 ,也可倒着截取

    var str1 = 'The morning is upon us.';
    var str2 = str1.slice(4, -2);
    console.log(str2); // OUTPUT: morning is upon u
    // slice() 提取的新字符串包括beginSlice但不包括 endSlice。
    // slice 截取允许负数   负数 + 字符长度

    var str = "abcdefghij";
    console.log(str.substr(1,2)); // bc
    // substr 开始索引位置为负数时, 负数 + 长度
    // 第二参数是截取的长度

6、 字符串与正则表达式匹配 match()

    // match  返回的是数组 没有返回null  [0]
    var str = 'For more information, see Chapter 3.4.5.1';
    var re = /see (chapter \d+(\.\d)*)/i;  [0]
    var found = str.match(re);

    console.log(found);

    // logs [ 'see Chapter 3.4.5.1',
    //        'Chapter 3.4.5.1',
    //        '.1',
    //        index: 22,
    //        input: 'For more information, see Chapter 3.4.5.1' ]

    // 'see Chapter 3.4.5.1' 是整个匹配。
    // 'Chapter 3.4.5.1' 被'(chapter \d+(\.\d)*)'捕获。
    // '.1' 是被'(\.\d)'捕获的最后一个值。
    // 'index' 属性(22) 是整个匹配从零开始的索引。
    // 'input' 属性是被解析的原始字符串。

 7、字符串替换

    var str = 'Twas the night before Xmas...';
    var newstr = str.replace(/xmas/i, 'Christmas');
    console.log(newstr); // Twas the night before Christmas...

 8、lastIndexOf  indexOf

// lastIndexOf() 方法返回指定值在调用该方法的字符串中最后出现的位置,如果没找到则返回 -1。从该字符串的后面向前查找,从 fromIndex 处开始。
// 索引倒着来
console.log("canal".lastIndexOf("a",0)); // -1

// indexOf() 方法返回调用 String 对象中第一次出现的指定值的索引, 开始在 fromIndex进行搜索。
// 如果未找到该值, 则返回 - 1。

 9、字符串其他 

    // 字符串其他 
    // trim() 方法会从一个字符串的两端删除空白字符。
    // valueOf() 方法返回一个String对象的原始值(primitive value)。
    // toUpperCase() 将调用该方法的字符串值转换为大写形式
    // toLowerCase() 会将调用该方法的字符串值转为小写形式,并返回。
    // normalize() 方法会按照指定的一种 Unicode 正规形式将当前字符串正规化.
    // includes() 方法用于判断一个字符串是否包含在另一个字符串中,根据情况返回true或false。
    // endsWith()方法用来判断当前字符串是否是以另外一个给定的子字符串“结尾”的,根据判断结果返回 true 或 false。

 

相关文章:

  • 2021-07-20
  • 2021-08-05
  • 2021-05-28
  • 2021-12-28
  • 2021-09-08
  • 2021-07-26
  • 2021-11-12
  • 2021-06-12
猜你喜欢
  • 2022-12-23
  • 2021-06-12
  • 2022-12-23
  • 2021-10-31
  • 2021-07-10
  • 2021-07-09
相关资源
相似解决方案