JavaScript基础之字符串
其实在很多语言中字符串都占据很重要的位置,处理数据避免不了与字符串“碰一碰”。其实在前端的笔试中,对字符串的处理题目是经常考的,很多人觉得这些知识没什么难度,但是能在不借助外部帮助的情况下,写出来最简洁的处理代码,是不容易的,废话不多说,让我们来看一看字符串有哪些常用方法。
说到字符串,简单了解一下字符串的基本概念和基本知识:
字符串的概念:
所以带单引号或者双引号的都叫字符串。
字符串的声明:
1.通过new运算符声明
var str1=new String(100);
2.省略new声明
var str2=String(100);
3.字符串常量赋值
var str3="100";
字符串的转换:
1. var num=10; var Str=num.toString();
2. var num=10; var Str=String(num);
3. var num=10; var Str=num+"";
前两种都是使用的JS中的方法,第三种利用的是字符串的特性,任何类型的数据和字符串类型的数据做相加操作时,其他数据类型会自动转化为字符串类型,此时的 + 不再是数学意义上的相加,而是字符串拼接。
字符串的方法:
访问字符串中的字符:
字符串.length: 访问字符串中字符的个数。 【注】中文 utf-8(三个字符表示一个汉字) gbk(两个字符表示一个汉字)
在计数的时候一个汉字为一个字符。
字符串.charAt(下标) 访问字符串中单个字符【注】下标从0开始。
【注】字符串是只读的,字符串一旦被声明就没有办法修改。字符串的数据存储在只读数据段。
字符串的获取方法
charAt(下标) 访问字符串中对应下标字符。
var str="abcdab";
var index=str.charAt(2);//"c" 下标从0开始
charCodeAt(下标) 访问字符串中对应下标字符的ASCII码值。
var str="abcdab";
var index=str.charCodeAt(2);//99
fromCharCode(ASCII值1,ASCII值1.....) 将传入的ASCII码值转化为字符,并返回一个由这些字符组成的字符串。
var str=String.fromCharCode(97,98,99);//"abc"
字符串的查找方法
indexOf(subStr,start) 在字符串中寻找subStr第一次出现的位置,从start位置开始查找,如果没有start值,默认从0开始。 如果没找到,返回为-1。
var str="abcdab";
var index=str.indexOf("a");//0 下标从0开始,且返回第一个出现位置的下标
lastIndexOf(subStr) 在字符串中寻找subStr最后一次出现的位置,从start位置开始查找,查找的下标是从右往左数的。如果没有start值,默认从0开始。 如果没找到,返回为-1。
var str="abcdab";
var index=str.IndexOf("a");//4 下标从0开始,且返回最后一个出现位置的下标
search(subStr)正则匹配 在字符串中寻找subStr第一次出现的位置,从0开始。
【区别】 search方法中的参数可以为正则表达式,写法:/abc/; 正则表达式
有修饰符:i 忽略大小写 g全局匹配。
var str="Abcabcabc";
var subStr=/abc/i;
var indexstr.search(subStr);
上述代码值为0; 如果 subStr=/abc/; 值为3。
字符串的提取方法
substring(start,end) 将字符串中[start,end) 这部分字符提取出来,生成一个新字符串,返回新的字符串。
var str="abcdab";
var str1=str.substring(1,3);//"bc" 注意包括下标为1的元素,不包括下标为3的元素
substr(start,length) 在字符串中截取字符串,从start开始,截取length长度的字符串。
var str="abcdab";
var str1=str.substr(1,2);//"bc" 注意包括下标为1的元素,截取总长度为2
slice(start,end) 【是数组的方法】 作用和substring方法一样。
其他字符串方法
字符串替换 replace(oldstr,newstr) 将字符串中的oldstr用newstr代替,返回新的字符串
【注】这个方法不会对原字符串造成影响,只会返回新的字符串,并且此方法只替换一次,也就是对此字符串的一个oldstr进行替换。
如果想把这个字符串中所有oldstr进行替换,可以使用正则表达式
var str="how are are you";
var newStr=str.replace(/are/g,"old are");
字符串分割 split(分隔符,length) 用分隔符对原字符串进行分割,将分割完毕后的子串,放在数组中返回。(length参数,控制返回的数组的长度,一般情况下不用)
var str="a,bc,d,ab";
var str1=str.split(",");// ["a","bc","d","ab"]
字符串拼接 concat(字符串1,字符串2....) 将字符串和参数字符串拼接起来,返回一个新字符串
【注】正常情况下我们使用 + 号就能完成拼接。
var str="abcdab";
var str1="hello";
var newStr=str.concat(str1);//"abcdabhello"
相信JavaScript中字符串操作的函数不止这几个,上面列的都是非常实用的。如果有哪些需要补充的,欢迎!
- 点赞
- 收藏
- 关注作者
评论(0)