美文网首页
js数组,字符串api汇总

js数组,字符串api汇总

作者: echo三文鱼 | 来源:发表于2019-10-15 10:24 被阅读0次

    一、数组
    1.栈方法 let a=[1,2,3,4,5] (后进先出)
    push 推入元素到数组的末尾,改变原数组,返回数组的长度 alert(a.push(6)) / 6
    pop 删除数组最后一项,改变原数组,返回删除的项 alert(a.pop()) / 5

    2.队列方法 let a=[1,2,3,4,5] (先进先出)
    shift 删除数组的第一项,改变原数组,返回删除的项 alert(a.shift()) /1
    unshift 添加指定元素到数组的前端,改变原数组,返回数组长度 alert(a.unshift(1)) /6

    3.重排序方法 let a=[1,2,3,4,5]
    reverse 反转数组项的顺序,改变原数组,返回改变之后的数组 alert(a.reverse()) /[5,4,3,2,1]
    sort 按升序排列数组项,转成字符串再进行比较,改变原数组,返回改变之后的数组 alert([1,5,10,20].sort()) /[1,10,20,5]
    ps:如果想实现排序可以用compare函数

      function compare(value1,value2){
          if(value1<value2){
                return -1;
          }else if(value1>value2){
                return 1;
          }else{
                return 0;
          }
      }
      let a=[1,5,10,20]
      alert(a.sort(compare))   / [1,5,10,20]
    

    4.操作方法 let a=[1,2,3,4,5]
    concat 创建当前数组的一个副本,然后将接收到的参数添加至这个副本的末尾,不改变原数组,返回新构建的数组
    alert(a.concat(1,2,[3])) / [1,2,3,4,5,1,2,3]
    slice 基于当前数组中的一项或多项创建一个新数组,不改变原数组,返回新构建的数组
    alert(a.slice(1)) / [2,3,4,5] alert(a.slice(1,4)) [2,3,4] alert(a.slice(-2,-1)) / 4
    splice 改变原数组,返回删除的项
    传两个参的时候是删除任意数量的项 alert(a.splice(0,1)) / [1] alert(a) /[2,3,4,5]
    传三个参的时候,第一个是从哪个索引值开始删除,第二个参是删除的个数,第三参是从该索引处添加的参数
    alert(a.splice(1,0,7)) / [] alert(a) / [1,7,2,3,4,5]
    alert(a.splice(1,1,7)) / [2] alert(a) / [1,7,3,4,5]

    5.位置方法 let a=[1,2,3,4,5,1,2,3,4]
    indexOf alert(a.indexOf(4)) / 3 alert(a.indexOf(4,4)) / 8
    lastIndexOf alert(a.lastIndexOf(4)) / 8 alert(a.lastIndexOf(4,4)) /3

    6.迭代方法 (every,filter,map,forEach,some)

    7.归并方法 let a=[1,2,3,4,5]
    reduce reduceRight
    let value=a.reduce(function(prev,cur,index,array){return prev+cur}) alert(value) / 15
    reduceRight方法一样,只是执行的方法是从右到左

    二、字符串 slice/substring/substr/trim/toLocaleLowerCase/toLocaleUpperCase/
    let a="hello world"
    alert(a.slice(3)) / "lo world"
    alert(a.substring(3)) / "lo world"
    alert(a.substr(3)) / "lo world"
    alert(a.slice(3,7)) / "lo w"
    alert(a.substring(3,7)) / "lo w"
    alert(a.substr(3,7)) / "lo worl"

    alert(a.slice(-3)) / "rld"
    alert(a.substring(-3)) / "hello world"
    alert(a.substr(-3)) / "rld"

    alert(a.indexOf("o")) / 4
    alert(a.lastIndexOf("o")) / 7
    alert(a.indexOf("o",6)) / 从索引值6开始往后查找o / 7
    alert(a.lastIndexOf("o",6)) / 从索引值6开始往前查找o /4

    let a=" hello world "
    alert(a.trim()) / "hello world"

    let a="hello world"
    alert(a.toLocaleLowerCase()) /"hello world"
    alert(a.toLocaleUpperCase()) / "HELLO WORLD"

    字符串模式匹配方法replace(),可以接两个参数,第一个参可以是字符串和正则表达式,第二个参可以是字符串和函数
    let text="cat,bat,sat,fat"
    alert(text.replace('at','ond')) / "cond,bat,sat,fat"
    alert(text.replace(/at/g,'ond')) / 'cond,bond,sond,fond'

    相关文章

      网友评论

          本文标题:js数组,字符串api汇总

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