JS中-字符串-常用方法

字符串

length   返回字符串长度  // arr.length

特殊字符:

代码 描述
\’ 单引号(效果:‘)
\” 双引号(效果:“)
\\ 反斜杠(效果:\)
\b 退格键
\f 换页
\n 换行
\r 回车
\t 水平制表符
\v 垂直制表符

 

查询字符串

indexOf() 返回指定字符串在另一个字符串中首次出现的位置,查找不到返回-1 详情

lastIndexOf()  返回指定字符串在另一个字符串中最后一次出现的位置  详情
// 这两种方法都接受第二个参数作为搜索的开始位置:
let str = "Please locate where 'locate' occurs!";
str.indexOf("locate")    // 返回 7
str.indexOf("locate", 15)    // 返回 21

search()  方法搜索特定值的字符串,并返回匹配的位置,与indexOf()用法一致

两种方法,indexOf() 与 search(),是相等的。
这两种方法是不相等的。区别在于:
search() 方法无法设置第二个开始位置参数。// str.indexOf("China");
indexOf() 方法无法设置更强大的搜索值(正则表达式)。// str.indexOf("China", 18);

includes() 如果字符串包含指定值,includes() 方法返回 true

// 接受第二个参数作为搜索的开始位置:
let text = "Hello world, welcome to the universe.";
text.includes("world", 12)    // 返回 false

startsWith() 如果字符串以指定值开头,则返回 true,否则返回 false

endsWith() 如果字符串以指定值结尾,则返回 true,否则返回 false

// 这两种方法都接受第二个参数作为搜索的开始位置,且区分大小写

match() 方法根据正则表达式在字符串中搜索匹配项,并将匹配项作为 Array 对象返回

let text = "The rain in SPAIN stays mainly in the plain";
text.match(/ain/g)    // 返回数组 [ain,ain,ain]

 

截取字符串

slice(start,stop) 提取字符串的某个部分并在新字符串中返回被提取的部分(如果某个参数为负,则从字符串的结尾开始计数)详情

substring(start,stop)  类似于slice()不同之处在于 substring() 无法接受负的索引 详情

substr() 类似于 slice(),不同之处在于第二个参数规定被提取部分的长度

从start开始截取到stop位置,包括开始不包括结束,1个参数表示从start截到末尾
var str = "Apple, Banana, Mango";
var res = str.slice(7,13);  // Banana
var res = str.slice(-13,-7);  // Banana
var res = str.substring(7,13);  // Banana
var res = str.substr(7,6); // Banana

 

分割字符串

split(分隔符,返回数组的长度)   详情

var str = "123,456,789"; 
console.log(str.split(''));  // ["1", "2", "3", ",", "4", "5", "6", ",", "7", "8", "9"]
console.log(str.split(',')); // ["123", "456", "789"]

 

替换字符串

replace(被替换的字符串,替换的字符串) 用另一个值替换在字符串中指定的值  详情

 

大小写转换

toLowerCase()  将字符串都转成小写
toUpperCase()  将字符串都转成大写
var text1 = "Hello World!";       // 字符串
var text2 = text1.toUpperCase();  // text2 是被转换为大写的 text1
可以用来验证码检测  str1.toLowerCase() == str2.toUpperCase()

 

其他

trim()  去除首尾空格

concat() 连接两个或多个字符串

charAt() 方法返回字符串中指定下标(位置)的字符串

charCodeAt() 方法返回字符串中指定索引的字符 unicode 编码

str[0]    //HTML5,IE8+支持 和charAt()等效

match()  排除字符串中符合条件的组成一个新的数组返回

var str = "HELLO WORLD";
str.charAt(0);            // 返回 H
str.charCodeAt(0);         // 返回 72

 

字符串的初始大写

// 此方法用于将字符串的第一个字母大写。
const capitalize = str => str.charAt(0).toUpperCase() + str.slice(1)
capitalize("hello world")  // Hello world

 

翻转字符串

// 该方法用于翻转字符串并返回翻转后的字符串。
const reverse = str => str.split('').reverse().join('');
reverse('hello world');   // 'dlrow olleh'

 

随机字符串

// 此方法用于生成随机字符串。
const randomString = () => Math.random().toString(36).slice(2);
randomString();

 

字符串截断

此方法将字符串截断为指定长度。

const truncateString = (string, length) => string.length < length ? string : `${string.slice(0, length - 3)}...`;
truncateString('Hi, I should be truncated because I am too loooong!', 36)   // 'Hi, I should be truncated because...'

 

从字符串中删除 HTML

// 此方法用于从字符串中删除 HTML 元素。
const stripHtml = html => (new DOMParser().parseFromString(html, 'text/html')).body.textContent || '';

 

 

© 版权声明
THE END
喜欢就支持一下吧
点赞5 分享
共1条
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片
    • 头像puravive bbb0