一、String类型的方法:
1、toString(),该方法可以接受一个参数,表示输出数值的基数。例如:var num=10,num.toString()。多数情况系下是没有参数的。
2、String()函数的转换规则:
如果要转换的值有toString方法,则调用该方法。
null和undefined分别转换为 'null'和'undefined
3、字符串操作方法:
concat()用于拼接符串,例如 : var str = 'abc' , str.concat('efg'); // console.log(str) ==>'abcefg';
slice(),substring(),基于调用该方法的字符串返回一个新的字符串,可以接受一个或者两个参数,第一个参数表示截取字符串的起始位置,第二个参数表示截取字符串的结束位置。返回的字符串包含起始位置的字符,但是不包含结束位置的字符。如果没有第二个参数默认一字符串的结束位置作为结束位置。
substr(),基于调用该方法的字符转返回一个新的字符串,接受一个或者两个参数,第一个参数表示截取字符串的起始位置,第二个参数表示截取字符的个数。如果没有第二个参数默认一字符串的结束位置作为结束位置。
以上方法都不会改变原始字符串
当参数是负值时,slice会将传入的负值与字符串长度相加,substring将所有负值转换为0,substr会将第一个参数于字符串长度相加,第二个负值参数则转换为0。
slice中当第一个参数大于第二个参数时,将返回空字符串;substring中第一个参数大于第二个参数时。默认会交换两个参数的位置,然后返回字符串。
indexOf(),lastIndexOf()查询字符或者字符串在调用该方法的字符串中的位置,返回值相同。如果该字符串不存在于调用字符串中,返回-1;这两个方法的不同之处在于indexOf是从字符串的起始位置开始查找,lastIndexOf是从字符串的结束位置开始查找。都可以接受可选的第二个参数,表示查找的起始位置,一个从左起,一个从右起。
toLowerCase(),toUpperCase()分别表示把字符串转换为小写和大写。
4、字符串匹配方法:
match()接受一个参数,正则表达式或者RegExp对象。返回true或false。
search()接受的参数于match相同,返回第一个匹配项的索引。没有匹配项则返回-1;
replace()字符串替换,接受两个参数,第一个参数可以是RegExp对象或者字符串,第二个参数可以是字符串或者函数,如果第一个参数是字符串,则至替换第一个匹配项;如果想替换所有自字符串应该提供一个正则表达式而且要指定全局(g)标志。
split()分割字符串,返回一个数组,可以接收一个或者两个参数,第一个参数表示分隔符,可以是字符串或者正则表达式。第二个参数表示返回字符串的长度。
5、其他
字符串比较方法localCompare(); string.localCompare([string])
字符串编码方法fromCharCode(),该方法是一个静态方法 : String.fromCharCode([字符编码])
charAt();接受一个参数表示字符位置,返回该位置的字符
charCodeAt(),接受一个表示字符位置的参数,返回该位置字符的编码,于fromCharCode相反
二、数组方法
1、转换方法:
toString(),将数组转换为以‘,’分隔的字符串【1,2,3】=>'1,2,3'
valueOf()返回数组的值,例外 【1,2,3】=>[ 1,2,3],【1,2,3,,,】=>[1,2,3,undefined,undefined]
join()接受一个参数返回一改参数作为分割符的字符串 [1,2,3].join('|') = > 1|2|3
2、队列方法和栈方法
shift() 删除并返回数组的第一项,
unshift()向数组的开始添加一项,并返回新数组的长度,在IE中总返回 undefined
push() 向数组的末尾添加一项,返回新数组的长度
pop()删除并返回数组的组后一项
配合使用shift和push可以实现先进先出的队列,unshift和pop可以实现反向队列
3、排序
resverse() 反转数组
sort()会按升序排列数组项,该方法会调用数组每一项的toString方法,然后对得到的字符串排序。可以接受一个比较函数作为参数,这可以方便使用者定义排序的方式。
4、操作方法
concat()合并数组,该方法不会改变原始数组,当合并的数组的项包含数组时,会转换为单独的项,即转换之后的结果是一个一维的数组。
slice()基于调用该方法的数组中的一项或多项创建一个新的数组。可以接收一个或者两个参数:分别表示截取数组的起始位置和结束位置,但是不包含结束位置的项;只有一个参数时,返回从该位置开始直到最后一项的数组。如果传入的结束位置小于开始位置将返回空数组。当传入的参数是负数时,参数会转换为该负值于数组长度的和。该方法不会改变原始数组。该方法表现于string类型的slice方法相同。
splice()删除、插入和替换。
删除时只指定定两个参数,删除的起始位置,要删除的项的数量。
插入时需要至少三个参数,第一个表示起始位置,第二个0表示删除的项数,第三项要插入的项,可以插入多个项,arr.splice(2,0,'a','b','c');
替换,当第二个参数不为0,时,就是替换:其实是删除和插入的结合
splice会改变原始的数组
indexOf(),查询数组中某一项再数组中的位置,当属组不包含该项时返回-1;lastIndexOf从最后一项开始查找结果 与 indexOf返回的只想同。用法与数组的该方法相同