javascript中字符串的常用方法有哪些,你知道吗?
在面试中,经常会被问到了解的javascript中字符串的常用方法有哪些,这里做一个总结。
字符串的索引
js中字符串和数组类似,有对应的索引值,可以直接通过索引值访问字符串中对应位置的字符值。
var str = "哈哈哈这是一个test";
console.log(str[3]); //这
console.log(str[8]); //e
也可以使用chartAt()方法获取指定索引的字符值。
var str = "哈哈哈这是一个test";
console.log(str.charAt(3)); //这
查询相关的方法 indexOf方法
返回指定字符在这个字符串中出现的下标索引值,如果字符串中没有这个字符,返回-1。
var str = "哈哈哈这是一个test";
console.log(str.indexOf('e')); //8
console.log(str.indexOf('hh')); //-1
这个indexOf方法对数组也适用。
const nums = [0,'1',8,10];
console.log(nums.indexOf('1')); //1
console.log(nums.indexOf(1)); //-1
search方法
和indexOf方法效果一样,存在则返回索引值,不存在则返回-1。
var str = "哈哈哈这是一个test";
console.log(str.search('t')); //7
console.log(str.search('g')); //-1
但是数组查询不能使用search方法。
includes方法
判断给定字符串中是否包含了某个字符,返回值是布尔值,如果包含返回true,没包含返回false。
var str = "哈哈哈这是一个test";
console.log(str.includes('t')); //true
console.log(str.includes('h')); //false
startWith / endWith方法
判断字符串是否以指定字符开头/结尾。返回一个布尔值。
let str4 = "computer"
console.log( str4.startsWith("c") ); // true
console.log( str4.startsWith("C") ); // false
修改字符串的方法 slice方法
如果给slice方法传入一个参数:表示从第几位开始对字符串进行切割(从某一位到字符串的结尾)。
如果给slice方法传入两个参数:则切割字符串的两个索引中间部分(左闭右开区间)。如果参数为负数:从结尾开始算,最后一位是-1,往前索引值依次减1。
var str = "哈哈哈这是一个test";
console.log(str.slice(2)); //哈这是一个test
console.log(str.slice(2,7)); //哈这是一个
console.log(str.slice(2,-2)); //哈这是一个te
substring方法
用法类似slice。但是substring不接收负数作为参数,当遇到负数索引时,会将这个索引按0进行字符串切割。
var str = "哈哈哈这是一个test";
console.log(str.substring(-3)) //哈哈哈这是一个test
console.log(str.substring(2,9)); //哈这是一个te
substr方法
接受两个参数:第一个参数是切割字符串的起始位置js判断字符串包含小数点,第二个参数是切割的长度。
string.substr(start,len) //提取一个长度为len,从start开始的字符串
使用:
var str = "哈哈哈这是一个test";
console.log(str.substr(2,3)); //哈这是
replace方法
字符串替换。第一个参数是指定要替换的字符,第二个参数是替换后的字符。
var str = "哈哈哈这是一个test";
console.log(str.replace('哈','ha')); //ha哈哈这是一个test
如果要全局替换js判断字符串包含小数点,要使用带g修饰符集的正则表达式。
var str = "哈哈哈这是一个test";
console.log(str.replace(/哈/g,'ha')); //ha哈哈这是一个test
大小写转换
toUpperCase() //转为大写
toLowerCase() //转为小写
concat方法
字符串拼接。与字符串+号拼接类似,将两个字符串连接起来。
var str = "哈哈哈这是一个test";
console.log(str.concat(true)); //哈哈哈这是一个testtrue
console.log(str.concat('这是拼接的内容')); //哈哈哈这是一个test这是拼接的内容
trim方法
用于去掉字符串中的空格。
var str2 = " hello ";
console.log(str2.trim()); //hello len=5
字符串与数组的转换 split方法
将字符串拆分为子字符串数组,返回新数组,不改变原始字符串。
var str3 = "这 是 一 个 test";
console.log(str3.split(" ")); //(5) ['这', '是', '一', '个', 'test']
console.log(str3.split("")); //(12) ['这', ' ', '是', ' ', '一', ' ', '个', ' ', 't', 'e', 's', 't']
发表评论
热门文章
Spimes主题专为博客、自媒体、资讯类的网站设计....
一款个人简历主题,可以简单搭建一下,具体也比较简单....
仿制主题,Typecho博客主题,昼夜双版设计,可....
用于作品展示、资源下载,行业垂直性网站、个人博客,....
54447454
10月31日
[已回复]
能重复在发一下吗,无法下载了