JavaScript语言精粹_第八章

时间:2022-11-22 07:26:36

JavaScript包含了少量可用在标准类型上的标准方法。

Array

  array.concat(item...) 它包含array的浅复制并将1个或多个参数item附加在其后。

  array.join(separator) join方法将array构造成一个字符串,它将array中的每个元素构造成一个字符串,并用separate为分隔符把他们连接在一起,默认的separate是“,",为了实现无间隔的连接,可以使用空字符串作为separate。

  array.pop() 移除array中的最后一个元素并返回该元素

  array.push(itrm...)将一个或多个参数item附加到一个数组的尾部

  array.reverse() 反转array中的元素的顺序,并返回当前的array

  array.shift()移除数组array中的第一个元素,并返回该元素,如果这个数组是空的,它就会返回undefined,shift通常比pop慢得多。

  array.slice(start,end) slice方法进行浅复制,end参数是可选的,并且默认值是该数组的长度,如果两个参数中的任何一个是负数,array.length将和它们想加来试图使它们成为非负数。如果start大于等于array.length,得到的结果将是一个新的空数组。

  array.sort(comparefn) JavaScript的默认比较函数假定所有要排序的元素都是字符串,它没有在比较元素之前先检测它们的类型,所以当它比较这些数字的时候会将它们转化为字符串,导致得到一个错误的结果。

  但是可以使用自己的比较函数来替换默认的比较函数。

    

var n = [4,23,16,8,42,15];
n.sort(
function (a,b){
return a - b;
});
//n is [4,8,15,16,23,42];

  但是它无法给字符串排序。

  array.splice(start,deleteCount,item...) splice方法从array中移除1个或多个元素,并用新的itemt替换它们,参数start是从数组array中移除元素的开始位置,参数delete Count是要移除的元素个数,如果有额外的参数,那些item都将插入到所移除元素的位置上,它返回一个包含被移除元素的数组。

  array.unshift(item...) 将item插入到array的开始部分,返回array的新的长度值。

 

Function

  function.apply(thisArg,argArray) apply方法调用函数function,传递一个将被绑定到this的对象和一个可选的参数数组。apply方法被用在apply调用模式中。

Number

  number.toExponential(fractionDigits) toExponential方法把这个number转换成一个指数形式的字符串,可选参数fractionDigits控制其小数点后的数字位数。它的值必须在0-20之间

  number.toFixed(fractionDigits) toFixed方法把number转换成为一个十进制形式的字符串,可选参数fractionDigits控制其小数点后的数字位数,它的值必须在0-20之间,默认为0;

  number.toPrecision(precision) toPrecision方法把number转换成为一个十进制形式的字符串,可选参数fractionDigits控制其小数点后的数字位数,它的值必须在0-21之间。

  number.toString(radix) toString方法把number转换为字符串,radix的值控制基数,它的值必须在2-36之间,默认的radix是以10为基数的,radix参数最常用的是整数,但是他可以使用任意数字。

Object

  object.hasOwnProperty(name) 检查object是否包含name,包含返回true,原型链中的同名属性是不会被检查的,所以他对hasOwnProperty不起作用。

RegExp

  regexp.exec(string) exec方法是使用正则表达式的最强大和最慢的方法。如果它成功匹配regexp和字符串string,它会返回一个数组,数组中下标为0的元素将包含正则表达式regexp匹配的子字符串。下标为1的元素是分组1捕获的文本,下标为2的元素是分组2捕获的文本,如果匹配失败,它将会返回null。

  regexp.test(string) test是正则表达式中使用最简单和最快的方法。如果该regexp匹配string,它返回true,否则,它返回false,不要对这个方法使用g标志。

String

  string.charAt(pos) charAt方法返回string中pos位置处的字符串,如果pos小于0或大于字符串的长度string.length,它会返回空字符串。

  string.charCodeAt(pos)以整数形式表示的在string中的pos位置处的字符的字符码位。如果pos小于0或大于字符串的长度string.length,它会返回NaN。

  string.concat(string...) 链接字符串

  string.indexOf(searchString,position) 在string中查找另一个字符串searchString,如果它被找到,则返回第一个匹配字符的位置,否则返回-1.

  string.lastIndexOf(SearchString,position) 与indexof相似,它是从字符串的末尾开始查找。

  string.localeCompare(that) 比较字符串

  string.match(regexp) 匹配字符串和正则表达式,如果没有g标志,调用string.match(regexp)的结果与调用regexp.exec(string)的结果相同,然而,如果regexp带有g标志,那么它返回一个包含除捕获分组之外的所有匹配的数组。

  string.replace(searchValue,replaceValue) 对string进行查找和替换的操作,并返回一个新的字符串

  string.search(regexp) 与indexOf方法类似,只是它接受一个正则表达式对象作为参数而不是一个字符串

  string.slice(start,end) 复制string的一部分来构造一个新的字符串

  string.split(separator,limit) 把这个string分隔成片段来创建一个字符串数组,可选参数limit可以限制被分割的片段数量。

  string.substring(start,end) 与slice方法一样

  string.toLocaleLowerCase() 返回一个新字符串,使用本地化规则把string转换为小写格式

  string.toLocaleUpperCase() 返回一个新字符串,使用本地化规则把string转换为大写格式

  string.toLowerCase() 把string转化为小写格式

  string.toUpperCase() 把string转化为大写格式

  string.fromCharCode(char...)从一串数字中返回一个字符串