从零单排——面向对象角度认识JS世界Part2

来源:互联网 发布:怎么看手机网络制式 编辑:程序博客网 时间:2024/05/19 11:37

part2 内置对象

01 String

String对象常用方法和属性

一、concat方法

var str1 = "a";var str2 = "b";var str3 = "c";console.log(str1.concat(str2,str3));//abc/*等同于字符串想加  result = str1+str2+str3*/

二、indexOf方法

/*找到匹配项返回索引值,没有找到返回-1*/var myString="JavaScript";var a1=myString.indexOf("v");//2var a2=myString.indexOf("S");//4var a3=myString.indexOf("Script");//4var a4=myString.indexOf("key");// 如果没有匹配项返回 -1/*indexOf(str,fromi)还可以传入第二个参数,表示查找起始位置,若参数为负值则从0开始查找*/

三、charAt方法
返回指定索引位置的字符,若索引越界,返回空字符串

四、substr(formi,length)

/*截取部分字符串,从索引fromi开始到length长度,不指定或者length超过可截取最大长度,则截取到结尾*/myString="JavaScript";console.log(myString.substr(1,1));//aconsole.log(myString.substr(2,2));//vaconsole.log(myString.substr(3,3));//aScconsole.log(myString.substr(4,4));//Scriconsole.log(myString.substr(0));//JavaScriptconsole.log(myString.substr(0,100));//JavaScript/*若起始索引为负,则从右往左开始截取 - -1表示倒数第一个, -2表示倒数第二个*/

五、substring(stari,endi)
截取起始索引starti到结束索引endi的子字符串,但是包含stari的字符,不包含endi处的字符(含头不含尾)

六、slice(stari,endi)
用法基本和substring()一样。
不同点:支持负数

七、split()分割

/*按给定字符串分割,返回分割后的多个字符串组成的字符串数组。*/var s="a,bc,d";console.log(s.split(","));//["a", "bc", "d"]s="a,b,c,d,";console.log(s.split(","));//["a", "b", "c", "d", ""]

八、search()方法

判断是否包含符合条件的关键词,如果找不到返回-1,不支持g,加i忽略大小写。缺点:不能设置开始查找位置,只能找第一个不能找所有

九、match()方法

获取所有关键词内容,返回包含所有关键词内容的数组,如果找不到返回null,加g可以找所有,省略只找第一个,缺点:无法返回每个关键词的位置。

十、字符串大小写转换

myString="JavaScript";    myString = myString.toLowerCase();//javascript    console.log(myString);    myString = myString.toUpperCase();//JAVASCRIPT    console.log(myString);

十一、replace用法
参考之前写的《replace高级》

这次我们通过修改一些String对象原型方法的方式来认识replace用法

    /*字符串-去掉前空白字符 */String.prototype.ltrim = function(){    return this.replace(/(^\s*)/g, "");}var str = '    abc';console.log(str.ltrim());
    /*字符串去掉后空白字符*/String.prototype.rtrim = function(){    return this.replace(/(\s*$)/g, "");}var str = 'abc     ';console.log(str.ltrim());
    /*字符串去掉前后空白字符*/String.prototype.trim = function() {    return this.replace(/(^\s*)|(\s*$)/g, "");}var str = '   abc   ';console.log(str.ltrim());
/*将一个字符串的首字母大写,其它字符小写*/String.prototype.capitalize= function() {    return this.trim().replace(/^(\w{1})(.*)/g, function(match, g1, g2) {        return g1.toUpperCase() + g2.toLowerCase();    });}var str = 'javascript'console.log(str.capitalize())
/*检查字符串是否为空*/String.prototype.isEmpty = function(){    return this.length === 0;}var str = '';console.log(str.isEmpty());
/*对字符串特殊字符进行转义*/String.prototype.escapeHTML = function(){    //先转&符号,不然之后的&符号会被转掉    return this.replace(/&/g,'&amp')        .replace(/\</g, '&lt;')        .replace(/\>/g, '&gt;')        .replace(/\'/g, '&#39;')        .replace(/\"/g, '&quot;');}var str = '<h1>Hello "Word"<h1>';console.log(str.escapeHTML());/*对字符串反转义*/String.prototype.unescapeHTML = function() {   return this.replace(/&amp;/, '&')       .replace(/&lt;/g, '<')       .replace(/&gt;/g, '>')       .replace(/&#39;/g, '\'')       .replace(/&quot;/g, '\"')}str = str.escapeHTML();console.log(str.unescapeHTML());
0 0
原创粉丝点击