原生JavaScript常用数组/字符串方法与遍历

数组方法

数组常用方法
  • 改变数组自身方法
    1. push() 数组末尾添加n项/ pop()数组末尾移除一项 *****
    2. shift() / unshift()
    3. reserve() 数组反向排序 / sort() 数组正向排序(仅适用于一元数组)
    4. splice(index,removelength,[ele,ele1…]) 删除/插入/替换 *****
  • 不改变数组自身方法
    1. join(‘字符串分割符’) 返回字符串 ***** / toString() 布尔值转字符串
        var strArr = ['i','am','jontyy'];
        console.log(strArr.join());  //i,am,jontyy
        console.log(strArr.join('-'));  //i-am-jontyy
        console.log(strArr.join('')); //iamjontyy
        //字符串转数组是 split方法
    
    1. indexof() 查找索引值下标 / lastIndexof() 反向查找
    2. concat() 拼接,原数组末尾添加n项
    3. slice(start,[end]) 截取(不包括end) *****
数组高阶函数方法
  • 迭代方法
    1. every() 输出布尔值判段数组每一项是否符合条件(一假即假) / some() 只要任意一项符合条件则输出true(一真即真) -----不修改原数组
          var arr = [ 1, 2, 3, 4, 5, 6 ];  
          console.log( arr.some( function( item, index, array ){  
              console.log( 'item=' + item + ',index='+index+',array='+array );  
              return item > 3;  
          }));        
          console.log( arr.every( function( item, index, array ){  
              console.log( 'item=' + item + ',index='+index+',array='+array );  
              return item > 3;  
          }));  
          //item=1,index=0,array=1,2,3,4,5,6
          //item=2,index=1,array=1,2,3,4,5,6
          //item=3,index=2,array=1,2,3,4,5,6
          //item=4,index=3,array=1,2,3,4,5,6
          //true
          //item=1,index=0,array=1,2,3,4,5,6
          //false
      
      some一直在找符合条件的值,一旦到,则不会继续迭代下去。
      every从迭代开始,一旦有一个不符合条件,则不会继续迭代下去。
    2. filter() 过滤 —修改原数组
      var ages = [32, 33, 16, 40];
      function checkAdult(age) {
          return age >= 18;
      }
      function myFunction() {
      console.log(ages.filter(checkAdult));//[32,33,40]
      
      /
      map() 映射(遍历修改返回) —修改原数组
      var objarr = [
          { id: 1, name: 'renzejun' },
          { id: 2, name: 'xiaokechao' },
          { id: 3, name: 'zhoujun' }
      ];
      var newarr = objarr.map((ele, index, objarr) => {
          return ele.id
      });
      console.log(newarr);//[1,2,3]
      
    3. forEach()
        arr.forEach((index,ele,arr) => {
    
        })
    
  • 归并方法
    1. reduce() 返回数组每一项的和, —不改变原数组
    var a = [1,2,3,4,5,6,7,8,9,10] 
    var str = a.reduce(function(prev,cur,index,arr){
        return prev + cur ;
    });
    str  //55
    
    1. reduceRight()

字符串方法

  • toUpperCase() / toLowerCase()
  • charAt(index) / charCodeAt(index) / String.fromCharCode(unicode)
  • indexOf (str, char) / lastIndexOf()
'hello'.indexOf('ll',0);
//2
  • substring(start,end) 与数组同理/ slice(start,end) 截取 *****
  • replace(搜索的字符,替换的字符) 替换
'asdasdasdasd'.replace('a','---')
//"---sdasdasdasd"
  • concat()

猜你喜欢

转载自blog.csdn.net/HelloWord182/article/details/93317852