JS怎样把字符串变成数组

你的代码实际上很有趣。
我们先看第一个替换。

arr=place.replace(/(&9 2 ;[)|(&9 2 ;])/g,"");
这个正则表达式 /(&9 2 ;[)|(&9 2 ;])/g 的作用是什么?匹配反斜杠和括号的组合。
例如\或\(或\)。
查看字符串 varplace="[&3 9 ;wuhan&3 9 ;,&3 9 ;beijing&3 9 ;,&3 9 ;shanghai&3 9 ;,&3 9 ;tianjin&3 9 ;]";。
里面有转义字符。
例如,\ 此处避免了 [' 或 ]。

所以第一个替换删除了 \ 和 \( 或 \)。
结果是“武汉”、“北京”、“上海”、“天津”。
你看,逗号前面多了一个单引号,因为 \ 被删除了,而 ' 最初被转义了。

让我们看看第二次替换。

arr=place.replace(/(&9 2 ;&3 9 ;)/g,"");
此正则表达式 /(&9 2 ;&3 9 ;)/g 只匹配 \ 和单引号 ' 的组合。
删除所有 \,包括任何否则会转义单引号的内容。
因此,'wuhan','beijing','shanghai','tianjin'中的单引号前面没有\,就变成wuhan,beijing,shanghai,tianjin。

如您所见,第一次替换消除了相对于括号的 \ ,而第二次替换仅消除了相对于单引号的 \ 。
如果同时使用两个替换,则可以将字符串处理为所需的格式。

js如何将字符串转换为数组

需要明确的是,JavaScript 中的 split() 函数是将字符串转换为数组的强大工具。
确实,它非常简单,如果使用得当,可以解决很多问题。
我们先来说说最重要的事情。
split()函数可以根据指定的限制分割字符串。
例如,使用逗号分隔字符串“Hello, world, how are you, you”。
代码为str.split("),输出为["hello", "world", "how", "you", "you"。

还有一点,当字符串中连续出现分隔符时,split()将这些空字符串保留为数组元素。
例如,"hello, world"用逗号分隔后,结果为["hello", ""world"。
还有另一个重要的细节。
如果不想保留空字符串,可以使用 .filter(Boolean) 来过滤它们。

起初我以为crack()有很大的性能问题,但后来我发现在大多数情况下性能都很好。
但是,如果您连接很长的字符串或频繁调用 split(),手动实现循环拆分逻辑可能会更有效,但这意味着您必须编写更多代码,因此需要权衡。

最后,一个简单的陷阱提醒。
如果要使用正则表达式作为分隔符,请记住正则表达式必须用斜杠括起来。
例如,您可以编写 str.split(/[,; ]+/) 来分隔“Hello, World; Hawareo”中的逗号、分号和空格。

总之,split()是进行字符串分割的神器,值得你花时间去掌握它。
你怎么认为?您是否曾经遇到过错误使用 split() 的问题?