在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
字符串长度:length获取字符串指定位置的值charAt()返回值 str.charAt(2) // c str[2] // c str.charAt(30) // '' str[30] // undefinde 当index的取值不在str的长度范围内时,str[index]会返回undefined,而charAt(index)会返回空字符串; 注意:str[index]不兼容ie6-ie8,charAt(index)可以兼容。 charCodeAt()获取字符串索引位置字符的 Unicode 值 str.charAt(2) // c str[2] // c str.charAt(30) // '' str[30] // undefinde 字符串检查是否包含某个值indexOf()查找某个字符,有则返回第一次匹配到的索引位置,否则返回-1,正序查找: str.indexOf('e') // 4 索引位置 str.indexOf('e',5) // -1 语法:
lastIndexOf()查找某个字符,有则返回最后一次匹配到的位置,否则返回-1,与indexOf相反,倒叙查找: str.lastIndexOf('e') // 10 str.lastIndexOf('e',8) // 倒叙查找0-8索引之内的e // 4 str.lastIndexOf('e',3) // 倒叙查找0-3索引之内的e // -1 语法:
includes()判断字符串是否包含指定的子字符串。如果找到匹配的字符串则返回 true,否则返回 false。 str.includes('e') // true str.includes('e',11) // false 语法:
startsWith()该方法用于检测字符串是否以指定的子字符串开始。如果是以指定的子字符串开头返回 true,否则 false。 str.startsWith('ab') // true str.startsWith('ef') // false str.startsWith('ef',4) // true 语法:
endsWith()该方法用来判断当前字符串是否是以指定的子字符串结尾。如果传入的子字符串在搜索字符串的末尾则返回 true,否则将返回 false。 str.endsWith('ba') // true str.endsWith('ef') // false str.endsWith('ef',6) // true 语法:
字符串拼接concat连接两个或多个字符串。该方法不会改变原有字符串,会返回连接两个或多个字符串的新字符串。 let a = 'asdf' let b = '123' let s = a.concat(b) let s2 = a + b console(a,b,s,s2) // 'asdf' '123' 'asdf123' 'asdf123' 语法:
'+'号如上contact示例,一般使用此方法,简单高效 字符串分割成数组split()把一个字符串分割成字符串数组。该方法不会改变原始字符串。 str.split('') // ["a", "b", "c", "d", "e", "f", "g", "h", "g", "f", "e", "d", "c", "b", "a"] str.split('',4) // ["a", "b", "c", "d"] str.split('',20) // ["a", "b", "c", "d", "e", "f", "g", "h", "g", "f", "e", "d", "c", "b", "a"] 语法:
截取字符串slice()提取字符串的某个部分,并以新的字符串返回被提取的部分。 str.slice(1,3) // bc str.slice(-3,-1) // cb 语法:
substr()用于在字符串中抽取从开始下标开始的指定数目的字符。 str.substr(5) // fghgfedcba str.substr(5,3) // fgh 语法:
substring()用于提取字符串中介于两个指定下标之间的字符 str.substring(3,5) // de str.substring(5,3) // de 语法:
字符串大小写转换toLowerCase()字符串转换为小写。 let t = 'AXC' t.toLowerCase() // axc toUpperCase()字符串转换为大写。 str.toUpperCase() // ABCDEFGHGFEDCBA 字符串模式匹配replace()用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。 str.replace('b',11) // a11cdefghgfedcba str.replace(/b/g,11) // a11cdefghgfedc11a g:表示全局,没有则默认替换第一个,i:表示忽略大小写 语法:
replaceAll()replace()方法的全局替换:
match()用于在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。该方法类似 indexOf() 和 lastIndexOf(),但是它返回指定的值,而不是字符串的位置。 str.match('ghg') // ["ghg", index: 6, input: "abcdefghgfedcba", groups: undefined] str.match(/ghg/g) // ["ghg"] str.match(/a/g) // ["a", "a"] str.match(/t/g) // null 语法:
search()用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串。 str.search(/ghg/) // 6 str.search(/a/) // 0 str.search(/a/g) // 0 str.search(/t/g) // -1 语法:
移除字符串空白符trim()用于移除字符串首尾空白符,该方法不会改变原始字符串。该方法不适用于null、undefined、Number类型 let s = ' 123 ' s.trim() // '123' trimStart()用于移除字符串开头空白符,该方法不会改变原始字符串。 let s = ' 123 ' s.trimStart() // '123 ' trimEnd()用于移除字符串结尾空白符,该方法不会改变原始字符串。 let s = ' 123 ' s.trimEnd() // ' 123' 其他类型转为字符串toString()适用于: let arr = [1,2,3] let num = 123 let bool = true let obj = {a:1} arr.toString() // '1,2,3' num.toString() // '123' bool.toString() // 'true' obj.toString() // '[object Object]' 语法: String()适用于: let arr = [1,2,3] let num = 123 let bool = true let obj = {a:1} String(arr) // '1,2,3' String(num) // '123' String(bool) // 'true' String(obj) // '[object Object]' 语法: 隐式转换非字符串+字符串=字符串,先将原数据类型隐式转换为字符串,然后再加上新字符串。 适用于: let arr = [1,2,3] let num = 123 let bool = true let obj = {a:1} arr+'' // '1,2,3' arr+'t' // '1,2,3t' num+'t' // '123t' bool+'' // 'true' obj+'' // '[object Object]' null+'' // 'null' JSON.stringify()适用于: let arr = [1,2,3] let num = 123 let bool = true let obj = {a:1} JSON.stringify(arr) // '[1,2,3]' 保留了中括号[] JSON.stringify(num) // '123' JSON.stringify(bool) // 'true' JSON.stringify(obj) // '{"a":1}' JSON.stringify(null) // 'null' JSON.stringify(NaN) // 'null' 还原使用JSON.parse() let arr = [1,2,3] let num = 123 let bool = true let obj = {a:1} JSON.parse(JSON.stringify(arr)) // [1,2,3] JSON.parse(JSON.stringify(num)) // 123 JSON.parse(JSON.stringify(bool)) // true JSON.parse(JSON.stringify(obj)) // {a:1} JSON.parse(JSON.stringify(null)) // null JSON.parse(JSON.stringify(NaN)) // null 重复一个字符串repeat()返回一个新字符串,表示将原字符串重复n次 'cv'.repeat(3) // 'cvcvcv' 'cv'.repeat(0) // '' 'cv'.repeat(2.6) // 'cvcv' 'cv'.repeat('3') // 'cvcvcv' 'cv'.repeat('3a') // '' 语法:
补齐字符串长度padStart()头部补全 let t = 'mosowe' t.padStart(1,'nb') // 'mosowe' t.padStart(10,'nb') // 'nbnbmosowe' t.padStart(10,'') // 'mosowe' t.padStart(10)// ' mosowe' 语法:
padEnd()末尾补全,参看padStart() 字符串转为数字 parseInt("10") // 10 parseInt("10.11") // 10 parseInt("16",8) // 14 = 8+6, 转为八进制 parseInt("010") // 10,据说有的浏览器是8,但是我试了好几款国内浏览器,都是10, parseInt("") // NaN parseInt("unh") // NaN parseInt("123tt") // 123 parseInt("tt123") // NaN 语法:
parseFloat()转为十进制浮点数 parseFloat("10") // 10 parseFloat("10.11") // 10.11 parseFloat("10.11.11111") // 10.11 parseFloat("010") // 10 parseFloat("") // NaN parseFloat("unh") // NaN parseFloat("123tt") // 123 parseFloat("tt123") // NaN 语法: JSON.parse()JSON.parse("10") // 10 JSON.parse("10.11") // 10.11 JSON.parse("10.11.11111") // error JSON.parse("010") // error JSON.parse("") // error JSON.parse("unh") // error JSON.parse("123tt") // error JSON.parse("tt123") // error 语法: Number()Number('') // 0 Number('10') // 10 Number('010') // 10 Number('2.3') // 2.3 Number('2.3.3') // NaN Number('2TT') // NaN Number('TT2') // NaN 语法: 总结本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注极客世界的更多内容! |
请发表评论