slice substr的区别

160 阅读1分钟

slice:对数组或字符串截取,返回一个新的数组对象,这一对象是一个由 begin 和 end 决定的原数组的浅拷贝(包括begin,不包括end)。原始数组不会被改变。如果没有end,则默认截取到最后,begin和end都表示下标,可以是负数,是-1就表示字符串的最后一个字符或数组的最后一个变量,-2表示倒数第二个,以此类推; 如
const animals = ['ant', 'bison', 'camel', 'duck', 'elephant'];

console.log(animals.slice(2)); // expected output: Array ["camel", "duck", "elephant"]

console.log(animals.slice(2, 4)); // expected output: Array ["camel", "duck"]

console.log(animals.slice(1, 5)); // expected output: Array ["bison", "camel", "duck", "elephant"]

slice()和substr()不同,slice()支持负数作为参数,substr()不支持。slice()用两个字符的位置制定字符串,substr()用字符的位置(下标)和长度来指定字符串。返回的都是被截取的字符串或者数组