JS Array.splice return 原始数组并链接到它
JS Array.splice return original Array and chain to it
我有一个字符串,其值与此类似 a,b,c,d
,我想按索引删除特定字母
所以这就是我所做的 str.split(',').splice(1,1).toString()
这(显然)不起作用,因为 splice
返回的是删除的值而不是原始数组
有没有办法在一个班轮中完成上述工作?
var str = "a,b,c,d";
console.log(str.split(',').splice(1,1).toString());
提前致谢。
Splice 工作到位,所以 oneliner 是
const arr = "a,b,c,d".split(','); arr.splice(1,1); console.log(arr.toString());
如果你想在 oneliner 中使用字符串,你必须在过滤器中硬编码索引
console.log("a,b,c,d".split(',').filter((item, i) => i != 1).toString())
或者两个切片(根本没有性能)
const arr = "a,b,c,d".split(',')
console.log([...arr.slice(0,1),...arr.slice(2)].toString())
您可以使用 filter
并添加 condition
作为 index != 1
。
var str = "a,b,c,d";
console.log(str.split(',').filter((x, i) => i != 1).toString());
使用正则表达式替换
的替代方法
var str = "a,b,c,d";
console.log(str.replace(/,\w+/, ''))
另一个奇怪的解决方案。解构数组,删除不需要的索引,获取一个对象并连接它的值。
var string = "a,b,c,d",
{ 1: _, ...temp } = string.split(',')
console.log(Object.values(temp).join(','));
我有一个字符串,其值与此类似 a,b,c,d
,我想按索引删除特定字母
所以这就是我所做的 str.split(',').splice(1,1).toString()
这(显然)不起作用,因为 splice
返回的是删除的值而不是原始数组
有没有办法在一个班轮中完成上述工作?
var str = "a,b,c,d";
console.log(str.split(',').splice(1,1).toString());
提前致谢。
Splice 工作到位,所以 oneliner 是
const arr = "a,b,c,d".split(','); arr.splice(1,1); console.log(arr.toString());
如果你想在 oneliner 中使用字符串,你必须在过滤器中硬编码索引
console.log("a,b,c,d".split(',').filter((item, i) => i != 1).toString())
或者两个切片(根本没有性能)
const arr = "a,b,c,d".split(',')
console.log([...arr.slice(0,1),...arr.slice(2)].toString())
您可以使用 filter
并添加 condition
作为 index != 1
。
var str = "a,b,c,d";
console.log(str.split(',').filter((x, i) => i != 1).toString());
使用正则表达式替换
的替代方法var str = "a,b,c,d";
console.log(str.replace(/,\w+/, ''))
另一个奇怪的解决方案。解构数组,删除不需要的索引,获取一个对象并连接它的值。
var string = "a,b,c,d",
{ 1: _, ...temp } = string.split(',')
console.log(Object.values(temp).join(','));