文章目录
substring( start, end)
-
返回从 start (包括)到 end(不包括)之间的字符,start、end均为非负整数。
-
若结束参数(end)省略,则表示从start位置一直截取到最后。
str.substring(start, end)
const arr='iloveyou' //字符串索引从0开始
document.write(arr.substring(1,5)) // love
document.write(arr.substring(1)) // loveyou
slice(start,end)
slice(start,end)
是一个字符串的方法,用于提取字符串的某个子字符串并返回新的字符串,而不会改变原始字符串。- 返回从 start(包括) 到 end (不包括)之间的字符,可传负值。
- 若结束参数(end)省略,则表示从start位置一直截取到最后。
- 如果是负数,则该参数规定的是从字符串的尾部开始算起的位置也就是说,-1 指字符串的最后一个字符,-2 指倒数第二个字符,以此类推。
str.slice(start,end)
const arr='iloveyou' //字符串索引从0开始
document.write(arr.slice(1,-3)) // love
document.write(arr.slice(1))
indexOf('要寻找的字符串')
- 既是字符串方法也是数组方法。
- 在字符串中,
indexOf()
方法返回第一次出现指定值的位置。如果没有找到,则返回 -1 - 语法为:
indexOf('要寻找的字符串')
let str = 'Hello,world!' //字符串的索引从0开始
document.write(str.indexOf('world')) // 输出 6
concat()
连接
- 方法在 JavaScript 中既可以作为字符串方法使用,也可以作为数组方法使用。
- 作为字符串方法,
concat()
用于连接两个或多个字符串
let str1 = 'Hello,'
let str2 = 'world!'
console.log(str1.concat(str2)) // 输出 'Hello,world!'
replace('寻找的字符串','替换的字符串')
- 是一个字符串方法
- 用于在字符串中查找并替换某个子字符串或字符,它返回一个新的字符串
- 第一个参数可以是字符串,也可以是正则表达式
let str = 'Hello,world!' //字符串的索引从0开始
str = str.replace('world', '***')
document.write(str) // Hello,***!
charAt('字符索引')
- 是一个字符串方法,用于返回指定索引位置的字符。
- 该方法接受一个参数,即要返回的字符的索引。
let str = 'Hello, world!'
let char = str.charAt(0) // 返回 'H'
console.log(char) // 输出 'H'
charCodeAt()
- 是 JavaScript 中的一个字符串方法,用于返回指定索引位置的字符的 Unicode 编码。
- 语法:str.charCodeAt(index)
- 其中,
str
是要获取字符编码的字符串,index
是要获取编码的字符的索引。
let str = 'Hello, world!'
let code = str.charCodeAt(0) // 返回 'H' 的 Unicode 编码
console.log(code) // 输出 72
// a'的Unicode的编码为97; 'z'的Unicode编码为122
toFixed()
toFixed()
是Number对象的一个方法,用于将一个数字四舍五入为指定小数位数,并返回字符串表示形式。
语法如下:
numObj.toFixed(numDigits)
参数:
numDigits
:必需参数,指定要保留的小数位数。如果该参数为0,则结果将不包含小数点或小数部分。如果该参数小于0,范围 [0,100]
返回值:
toFixed()
返回一个字符串,表示一个浮点数,四舍五入到指定的小数位数。该字符串可以用于表示数字。
示例:
let num = 123.456
let str1 = num.toFixed(2) // "123.46"
let str2 = num.toFixed(0) // "123"
注意事项:
toFixed()
方法返回的是一个字符串,而不是数字。如果需要将结果作为数字使用,可以使用parseFloat()
或Number()
函数进行转换。- 当使用
toFixed()
方法时,如果数字的小数部分恰好等于0.5,则该方法将四舍五入到最接近的整数。例如,0.5将被舍入为1,-0.5将被舍入为-1。
split()
是一个字符串方法,用于将字符串按照给定的分隔符分割成数组。
以下是split()
方法的基本语法:
str.split(separator[, limit])
separator
:必需参数,用作分隔符的字符串或正则表达式。如果省略,则字符串被分割为单个字符组成的数组。limit
:可选参数,指定返回的数组的最大长度。如果提供,则最多返回limit
个元素。
下面是一些示例:
- 按照空格分割字符串:
let str = "Hello World";
let arr = str.split(" "); // ["Hello", "World"]
- 按照逗号分割字符串:
let str = "apple,banana,orange";
let arr = str.split(","); // ["apple", "banana", "orange"]
trim()
方法
trim()
方法用于删除字符串开头和结尾的空格。
语法:
str.trim()
这里,str
是要进行操作的字符串。
下面是一个使用trim()
方法的示例:
let str = " Hello, World! ";
let trimmedStr = str.trim();
console.log(trimmedStr); // "Hello, World!"
在上面的示例中,我们首先定义了一个包含开头和结尾空格的字符串" Hello, World! "
。然后,我们调用trim()
方法来删除开头和结尾的空格,并将结果存储在变量trimmedStr
中。最后,我们打印出trimmedStr
的值,可以看到空格已经被删除。
toLowerCase()
toLowerCase()
是一个字符串方法,用于将字符串中的所有字符转换为小写,不会改变原始字符串,而是返回一个新的字符串
示例:
let str = "Hello World!";
let lowerCaseStr = str.toLowerCase();
console.log(lowerCaseStr); // 输出 "hello world!"
toUpperCase()
String
的 toUpperCase()
方法将该字符串转换为大写形式,返回将字符串转换为大写形式后的值,不会影响字符串本身的值
示例1:
const sentence = 'The quick brown fox jumps over the lazy dog.';
console.log(sentence.toUpperCase()) // "THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG."
示例2:
console.log("alphabet".toUpperCase()) // 'ALPHABET'
startsWith()
ES6
String
的 startsWith()
方法用来判断当前字符串是否以另外一个给定的子字符串开头,并根据判断结果返回 true
或 false
。
语法:
startsWith(searchString, position)
// searchString 要搜索的字符串
// position 起始位置,字符串起始位置从0开始,可以省略,省略起始位置默认为0
示例:
const str1 = 'Saturday night plans'
console.log(str1.startsWith('Sat')) // true
console.log(str1.startsWith('Sat', 3)) // false
endsWith()
ES6
endsWith()
方法用于判断一个字符串是否以指定字符串结尾,如果是则返回 true
,否则返回 false
。
示例:
const str1 = 'Cats are the best!'
console.log(str1.endsWith('best!')) // true
console.log(str1.endsWith('best', 17)) // true
const str2 = 'Is this a question?'
console.log(str2.endsWith('question')) // false
repeat()
ES6
repeat()
方法构造并返回一个新字符串,其中包含指定数量的复制的字符串副本,这些副本连接在一起。
语法:
repeat(count) // count 十个非负整数
异常情况:RangeError
如果 count
为负值,或者 count
超过了字符串的最大长度,将抛出错误。
示例:
"abc".repeat(-1); // RangeError
"abc".repeat(0); // ''
"abc".repeat(1); // 'abc'
"abc".repeat(2); // 'abcabc'
"abc".repeat(3.5); // 'abcabcabc' (count 将被转换为整数,去除小数)
"abc".repeat(1 / 0); // RangeError
match()
ES6
match()
方法检索字符串与正则表达式进行匹配的结果
返回值:
返回一个数组,其内容取决于是否存在全局(g
)标志,如果没有匹配,则返回 null
- 如果使用
g
标志,则将返回与完整正则表达式匹配的所有结果,但不会返回捕获组。 - 如果没有使用
g
标志,则只返回第一个完整匹配及其相关捕获组。在这种情况下,match()
方法将返回与RegExp.prototype.exec()
相同的结果(一个带有一些额外属性的数组)。
const str = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
const regexp = /[A-E]/gi
const matches = str.match(regexp)
console.log(matches); // ['A', 'B', 'C', 'D', 'E', 'a', 'b', 'c', 'd', 'e']
search()
ES6
search()
方法用于在 String
对象中执行正则表达式的搜索,寻找匹配项
语法:
search(regexp) // regexp一个正则表达式对象
返回值:
如果匹配成功,则返回正则表达式在字符串中首次匹配的索引;否则,返回 -1
示例1:
const paragraph = "I think Ruth's dog is cuter than your dog!"
const regex = /[a-z]/
console.log(paragraph.search(regex)) // 2
console.log(paragraph[paragraph.search(regex)]) // t
示例2:
const str = "hey JudE"
const re = /[A-Z]/
const reDot = /[.]/
console.log(str.search(re)) // 返回 4,这是第一个大写字母“J”的索引
console.log(str.search(reDot)) // 返回 -1,找不到点符号“.”