slice()
slice 不会修改原数组,只会返回一个浅复制了原数组中的元素的一个新数组。
语法:
arr.slice([begin[, end]])
参数:
begin : (可选)
提取起始处的索引(从 0 开始),从该索引开始提取原数组元素。如果该参数为负数,则表示从原数组中的倒数第几个元素开始提取,slice(-2) 表示提取原数组中的倒数第二个元素到最后一个元素(包含最后一个元素)。如果省略 begin,则 slice 从索引 0 开始。如果 begin 超出原数组的索引范围,则会返回空数组。
end:(可选)
提取终止处的索引(从 0 开始),在该索引处结束提取原数组元素。slice 会提取原数组中索引从 begin 到 end 的所有元素(包含 begin,但不包含 end)。如果该参数为负数, 则它表示在原数组中的倒数第几个元素结束抽取。 如果 end 被省略,则 slice 会一直提取到原数组末尾。如果 end 大于数组的长度,slice 也会一直提取到原数组末尾。
返回值:
一个含有被提取元素的新数组。
示例:
截取数组
const arr = [1, 2, 3, 4, 5]
console.log(arr.slice(2, 4))
截取字符串
let str = '今天天气不错,就是还要排队做核酸'
// 1、最后一个字符不要
console.log(str.slice(0, -1))
// 2、想要中间的 气(开始索引,结束索引)
console.log(str.slice(3, 4))
// 3、从第几个索引开始截,一直截到最后
console.log(str.slice(7))
<!-- 今天天气不错,就是还要排队做核
气
就是还要排队做核酸 -->
substring()
substring 提取从 indexStart 到 indexEnd(不包括)之间的字符。
语法:
str.substring(indexStart[, indexEnd])
参数:
indexStart
需要截取的第一个字符的索引,该索引位置的字符作为返回的字符串的首字母。
indexEnd
可选。一个 0 到字符串长度之间的整数,以该数字为索引的字符不包含在截取的字符串内
参数具体描述:
- 如果
indexStart等于indexEnd,substring返回一个空字符串。 - 如果省略
indexEnd,substring提取字符一直到字符串末尾。 - 如果任一参数小于 0 或为 NaN,则被当作 0。
- 如果任一参数大于
stringName.length,则被当作stringName.length。
示例:
var anyString = "Mozilla";
// 输出 "Moz"
console.log(anyString.substring(0,3));
console.log(anyString.substring(3,0));
console.log(anyString.substring(3,-3));
console.log(anyString.substring(3,NaN));
console.log(anyString.substring(-2,3));
console.log(anyString.substring(NaN,3));
// 输出 "lla"
console.log(anyString.substring(4,7));
console.log(anyString.substring(7,4));
// 输出 ""
console.log(anyString.substring(4,4));
// 输出 "Mozill"
console.log(anyString.substring(0,6));
// 输出 "Mozilla"
console.log(anyString.substring(0,7));
console.log(anyString.substring(0,10));
本文详细介绍了JavaScript中slice()和substring()两个方法的使用。slice()用于从原数组中提取部分元素并返回新数组,而substring()则用于从字符串中截取子串。文章通过实例展示了这两个方法的具体应用。
2924

被折叠的 条评论
为什么被折叠?



