您的位置:首页 > Web前端 > JavaScript

JavaScript中String常用方法总结

2017-10-25 22:07 465 查看

length属性

var str = "hello";
alert(str.length); //5


常用字符方法

charAt方法

该方法接受一个索引作为参数,返回在该位置的字符。

var str = 'hello';
alert(str.charAt(0)); //h


注意:支持ES5的浏览器中同样可以使用方括号来进行字符访问。

如:str[0]。

charCodeAt方法

该方法接受一个索引作为参数,返回指定位置的字符的编码。

常用操作方法

常用的操作方法包括concat,substr,substring,slice。这些对字符串的操作方法不会改变字符串本身,而是会返回一个子串

concat方法

此方法的主要作用是进行字符串的拼接,由于使用+可以更方便的进行字符串拼接,因此这种方法的使用频率并不高。

var str1 = 'hello ';
var str2 = 'world';
var str3 = '!';
alert(str1.concat(str2,str3)); //hello world!
alert(str1+str2+str3);  //hello world!


注意:concat可以接收任意多的参数。

slice方法

slice方法接收两个参数,而第二个参数是可选的。

slice(start,[end])

返回的字符串不包括end处的字符。

如果不指定end,默认到字符串尾部(并不是end到尾部,而是输出到尾部,相当于end到尾部位置的后一位)。

var str1 = 'hello';
alert(str1.slice(0,1)); //h
alert(str1.slice(0)); //hello


substring方法

乍一看substring方法似乎和slice方法没有什么区别,因为substring也是接收两个参数start和可选的end,返回的字符串也不包含end,当省略end时返回的字符串也是直到尾部。

将上例中的slice换为substring可得一样的结果。

其实它们在细节上还是有不小的差异的。

slice和substring的区别

当参数含有负数时

假设为这两个方法传入了负数,它们有不同的处理方式。

对于slice方法,它将负参数变为(负参数+length)。

注意:如果将负参数加上一次length后依然为负数,将不返回任何字符串。

而对于substring方法,它将负参数直接变为0。

var str1 = 'hello';
alert(str1.slice(0,-4));    //h
alert(str1.slice(0,-7));    //负数太小,输出为空
alert(str1.substring(-1,1)); //h


当传入的两个参数由大到小时

正常传入的参数都是由小到大,但是当传入start>end的参数时,两者也有不同的表现。

var str = 'hello';
alert(str.slice(2,1));  //为空
alert(str.substring(2,1)); //e


可见,slice方法直接输出空,而substring方法则反转两个参数正常输出。

substr方法

substr方法的使用不同于上述两种方法,它的第二个参数不是[end],而是[length],表示返回的字符串的长度。当省略第二个参数时,同样返回一个直至字符串尾的子字符串。

当传入substr的第一个参数start为一个绝对值小于length的负数时,将其与length相加再进行截取,而当传入的第一个参数特别小时(绝对值大于length),默认第一个参数为0。当传入的第二个参数不为正数时,直接返回空。(这一段是我在chrome中的测试,其实个人觉得这个没有什么意义。)

大小写转换方法

toLowercase:全部变为小写。

toUppercase:全部变为大写。

trim方法

该方法用于去除字符串左面及右面多余的空字符。

方法返回一个字符串的副本。

var str = '  he l lo ';
alert(str.trim()); //'he l lo'
alert(str);//'  he l lo '


字符串的模式匹配方法

包括match,search,replace,split。这些方法的使用都与正则表达式有关,这里先不谈,将在其它文章中专门总结。

localeCompare方法

该方法用于字符串的比较:

str1.localeCompare(str2);
/**
*若str1>str2,返回正数;
*若str1<str2,返回负数;
*若str1=str2,返回0.
*/


fromCharCode方法

这个方法可以用来生成一个String,参数为一个或多个字符编码。

alert(String.fromCharCode(104,101,108,108,111);//hello
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  javascript string