Javascript 中“”与“”的区别

问题描述 投票:0回答:3

我用它来删除字符串中的空格。

returnString.split(" ").filter(substr => substr !== "");

在我的脑海里应该是这样的:

returnString.split(" ").filter(substr => substr !== " ")    //note the space between the " "

为什么下面的那个不起作用?是JS语法吗?

答案:如果字符串开头有空格,则用空字符串进行拆分(因此 substr !== "")会在拆分字符串时从返回的数组中删除该空字符串。

javascript
3个回答
-1
投票

returnString.replace(/\s/g,'')
将是一个更好的方法。

""
是一个空字符串。

" "
是一个空格字符。

它们不能互换使用。


-1
投票

""
是一个空字符串。

如果字符串开头有空格,它将用空字符串分割该空格。

这就是为什么需要

substr !== ""
来删除空字符串。


-2
投票

正如评论中提到的,您要根据空格进行拆分,为数组中的所述空格创建索引。

const returnString = 'Hello I am Victor'

const str = returnString.split("").filter(substr => substr !== " ");

console.log(str.join(''))

会给你想要的结果。

但是,正则表达式模式最适合此用例。

// change const to let because
// reassigning a constant variable is not allowed
let returnString = 'Hello I am Victor'
returnString = returnString.replace(/\s/g, '')
© www.soinside.com 2019 - 2024. All rights reserved.