js Array对象和String对象经常使用方法整理

   咱们老是频繁的对数组和字符串进行操做,今天整理一下这些经常使用的方法。复习的时候写一写 否则会忘掉一些小细节==。数组

   一,String对象函数

      1.跟位置有关的this

        charAt()  返回在指定位置的字符编码

        charAtCodeAt()   方法可返回指定位置的字符的 Unicode 编码code

        indexOf()  从头检索字符串对象

        lastIndexOf()  从后向前检索字符串blog

      2.根据索引提取制定的字符串排序

        slice()  提取字符串的片段,并在新的字符串中返回被提取的部分。索引

           stringObjec.slice(start,end);队列

          (1) 返回包括字符串 stringObject 从 start 开始(包括 start)到 end 结束(不包括 end)为止的全部字符。

          (2) start,end为负值时,则该参数规定的是从字符串的尾部开始算起的位置。也就是说,-1 指字符串的最后一个字符。即 start =start             Mod (stringObject.length) 

        substr()  可在字符串中抽取从 start 下标开始的指定数目的字符

          stringObjec.substr(start,length);

          (1) 包含从 stringObject 的 start(包括 start 所指的字符) 处开始的 length 个字符

          (2)  start为负值时,则该参数规定的是从字符串的尾部开始算起的位置。也就是说,-1 指字符串的最后一个字符。即 start =start             Mod (stringObject.length) 

        substring() 用于提取字符串中介于两个指定下标之间的字符

         stringObject.substring(start,stop)

         (1)  返回的子串包括 start 处的字符,但不包括 stop 处的字符,其长度为 stop 减start。若是 start 比 stop 大,那么该方法在提取子串以前会                                先交换这两个参数。

         (2) 与 slice() 和 substr() 方法不一样的是,substring() 不接受负的参数 

      3.转换大小写

        toLowerCase()  字符串转为小写

        toUpperCase() 字符串转为大写

      4.字符串分割

        split() 把一个字符串分割成字符串数组

          stringObject.split(separator,howmany)

            

          (1)  返回一个字符串数组,该数组是经过在 separator 指定的边界处将字符串 stringObject 分割成子串建立的

 

   二,Array()对象 

      (1)  数组执行的堆栈操做,以及实现队列的方法

          pop(),push()堆栈

            push(),shift() (删除并返回数组的第一个元素)  队列

          pop(),unshift()  (向数组的开头添加一个或更多元素,并返回新的长度) 反向队列

      (2)    排序方法

          sort()

          reverse()

      (3)   slice()  已有的数组中返回选定的元素  跟字符串操做的slice()用法相同。

      (4)   splice() 向/从数组中添加/删除项目,而后返回被删除的项目 是个很强大的方法

          

    (5)   join()  把数组的全部元素放入一个字符串。元素经过指定的分隔符进行分隔。

    (6)   concat()  链接两个或更多的数组,并返回结果。感受不怎么使用==。

    (7)  对数组每一个元素进行操做的几个方法(迭代方法)

     filter() 对数组中的每一个元素都执行一次指定的函数(callback),而且建立一个新的数组,该数组元素是全部回调函数执行时返回值为 true

          的原数组元素。它只对数组中的非空元素执行指定的函数,没有赋值或者已经删除的元素将被忽略,同时,新建立的数组也不会包含这些元素。

        var filteredArray = array.filter(callback[, thisObject]);

        

    map()  返回一个由原数组中的每一个元素调用一个指定方法后的返回值组成的新数组,callback函数只会在有值的索引上被调用;

        array.map(callback[, thisArg])

    some()  对数组中的每一个元素都执行一次指定的函数(callback),直到此函数返回true,若是发现这个元素,some 将返回 true,若是回调函数

        对每一个元素执行后都返回 false ,some 将返回 false。

        var someElementPassed = array.some(callback[, thisObject]);

    every()  为数组中的每一个元素执行一次 callback 函数,直到它找到一个使 callback 返回 false的元素。若是发现了一个这样的元素,every方法将会

        当即返回 false。不然, callback 为每个元素返回true ,every 就会返回 true。

        array.every(callback[, thisArg])

    forEach()  对数组中的每一个元素都执行一次指定的函数(callback)

        array.forEach(callback[, thisObject]);

       总结: 这几个迭代方法共同点:

          如参数 thisObject 被传递进来,它将被当作回调函数(callback)内部的 this 对象,若是没有传递或者为null,那么将会使用全局对象。

          只对数组中的非空元素执行指定的函数,没有赋值或者已经删除的元素将被忽略。 

          都不改变原有数组。

          回调函数能够有三个参数:当前元素,当前元素的索引和当前的数组对象。 

          参数类型相同: callback: 要对每一个数组元素执行的回调函数。
                  thisObject : 在执行回调函数时定义的this对象。

    (8) 元素定位方法  indexOf(),lastIndexOf()

    总结:这些都是很基础的方法,也没怎么分析 只不过是复习的时候看了下经常使用的方法,字符串那几个操做的细节总是记不清拿出来写一写。