首页 > 代码库 > JS 精粹(方法)

JS 精粹(方法)

     数组方法:

         模拟队列的操作:push()/shift();unshift()/pop();模拟栈操作:push()/pop(); push()返回增加后的长度、unshift也是。pop和shift返回项值。concat()在已有的数组基础上返回一个数组,即是传入的是数组,它也会将数组变成单一的参数。reverse()没有用,join()将数组以某种分隔符的形式返回字符串。字符串的split可返回一个数组。

       slice在字符串及数组上都会有,slice(n,n+p),p是复制数目。数组会得到一个数组,即是是空数组,这个方法可以处理负数。字符的subString()可以复制,但不支持数组,不建议用。splice()返回数组,会影响原来的数组,可以修改、添加、插入项与数组中,但效率不高。sort()默认基于编码大小,可以认为传入函数方便比较。

  Number的方法:

         toString()。该方法将数字以基于几进制的形式输出。实现起来有bug.若是整数会出错(下面几个方法也是这样),但若是浮点数形式没问题。存在变量中也不会有问题,故最好现存于变量中。         如:23.toFixed(3) 会出错,而23..toFixed(3)就可使用。 

         toExponential()以科学计数法输出字符串,可指定小数点后的位数(0-20位)。有数字直接使用方法的可能。 

         toFixed()将数字指定小数点后的位数输出。

         toPrecision()指定总的位数。

  正则表达式方法:

          test()/exec();test()不建议使用g-flag。exec()好用,但慢(捕获较慢)。exec()返回一个数组,index0为匹配项,后面一次是捕获组、index、input。不用全局标识仅仅匹配第一次的。g标识下会一直向下,但只是每次匹配一项。

     字符串的操作:

           字符串是最常见的操作。charAt()/charCodeAt()/String.fromCharCode()得字符串。concat()拼接。建议使用“+”。

           查询:indexOf(text,position)/lastIndexOf()指定字符串及开始位置,返回位置;查询不到返回-1。search(exp)使用正则表达式,忽略g-flag,返回位置。

           match()会返回一个数组,正则表达式中没有g同没有g的exec()方法;含g会有返回项各匹配项。replace(a,b)中a可以是字符串、正则表达式。b可以是函数、可以是字符串。同样,若不带g只会匹配第一项。为字符串时$有特殊含义。使用函数时,传入第一个参数是匹配项,然后是捕获组。

           split()可以是字符串、正则表达式。是正则表达式时捕获组会加入数组。

 

JS 精粹(方法)