String对象常用方法

版权声明:原创文章,未经允许不得转载!!! https://blog.csdn.net/halo1416/article/details/81953037

记录一下String对象常用方法:

<script type="text/javascript">
	//基本数据类型----字符串
	var str="javascript";
			
	//复合数据类型(字符串对象)
	var strObject=new String("javascript");
			
	//alert(typeof str);
	//alert(typeof strObject);
			
	//1. 字符长度 length
	//简单理解:就是说JS中的基本数据类型可以当成对应的引用类型来使用
	document.write(str+"<br/>");
	document.write(str.length+"<br/>");
	document.write(strObject.length+"<br/>");
			
			
	//2.charAt() 返回在指定位置的字符。 
	document.write(str.charAt(2)+"<br/>");
			
	//3.indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。
	//找到就返回字符具体的位置,没有找到就返回-1
	document.write(str.indexOf("b")+"<br/>");
			
	//比如:判断电子邮件中是否有@符号
	var email="dsfsdfsdf";
	var isEmail=email.indexOf("@");
	if(isEmail<0)
	{
		document.write("电子邮件格式错误<br/>");
	}
	else
	{
		document.write("电子邮件格式正确<br/>");
	}
			
	//4.lastIndexOf() 方法可返回一个指定的字符串值最后出现的位置,在一个字符串中的指定位置从后向前搜索。
			
	//5.replace("旧的字符","新的字符") 方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。
			
	var userStr="你他妈个SB练法轮功的家伙,整个脑残了,不惜拿自己的父母家人来骗别人。";
	document.write("脏话:"+userStr+"<br/>");
	userStr=userStr.replace("脑残","★★★");
	userStr=userStr.replace("法轮功","★★★");
	userStr=userStr.toLowerCase().replace("sb","★★★");
	document.write("过滤:"+userStr+"<br/>");
			
			
	//真实项目中有很多敏感关键词,用循环替换
	//关键词库
	var arr=["sb","脑残","法轮功","习近平","fuck","草","艹"];
	//用户说的脏话
	userStr="你他妈个SB练法轮功的家伙,整个脑残了,Fuck不惜拿自己的父母家人来骗别人,艹尼玛。";
	document.write("脏话:"+userStr+"<br/>");
	//批量的替换
	for (var i = 0; i < arr.length; i++) {
		userStr=userStr.toLowerCase().replace(arr[i],"★★★");
	}
	document.write("过滤:"+userStr+"<br/>");
			
	//6.toLowerCase() 把字符串转换为小写。 
			
	//7.toUpperCase() 把字符串转换为大写。 
			
	var testStr="The less stable compounds were converted into a compound called Delta-A THC.";
	document.write(testStr.toLowerCase()+"<br/>");
	document.write(testStr.toUpperCase()+"<br/>");
			
	//8.charCodeAt() 返回在指定的位置的字符的 Unicode 编码。 
			
	//9.fromCharCode() 可接受一个指定的 Unicode 值,然后返回一个字符串。
			
	var testStr2="我爱你!"
	document.write(testStr2.charCodeAt(1)+"<br/>");
			
	testStr2="love";
	document.write(testStr2+"<br/>");
	document.write(testStr2.charCodeAt(0)+" "+testStr2.charCodeAt(1)+" "+testStr2.charCodeAt(2)+" "+testStr2.charCodeAt(3)+" "+"<br/>");
			
	document.write(String.fromCharCode(29233)+"<br/>");
			
	//10.substr(start,length) 方法可在字符串中抽取从 start 下标开始的指定数目的字符。
	//start 必需。要抽取的子串的起始下标。必须是数值。如果是负数,那么该参数声明从字符串的尾部开始算起的位置。也就是说,-1 指字符串中最后一个字符,-2 指倒数第二个字符,以此类推。 
    //length 可选。子串中的字符数。必须是数值。如果省略了该参数,那么返回从 stringObject 的开始位置到结尾的字串。 
            
    //11.substring(start,stop) 方法用于提取字符串中介于两个指定下标之间的字符。
    //start 必需。一个非负的整数,规定要提取的子串的第一个字符在 stringObject 中的位置。 
	//stop 可选。一个非负的整数,比要提取的子串的最后一个字符在 stringObject 中的位置多 1。
    //如果省略该参数,那么返回的子串会一直到字符串的结尾。
 
    var newsTitle="中国造新舰比航母还厉害:可载500导弹一舰可敌一国";
    //div布局时标题只能显示12个汉字
    document.write(newsTitle+"<br/>");
    //第0个位置到底11个位置的字符
    document.write(newsTitle.substring(0,11)+"...<br/>");
    document.write(newsTitle+"<br/>");
    //从第六个字符开始一直到结束
    document.write(newsTitle.substr(6)+"<br/>");
</script>

文章仅为本人学习过程的一个记录,仅供参考,如有问题,欢迎指出

猜你喜欢

转载自blog.csdn.net/halo1416/article/details/81953037