我试图在一个contenteditable div的按键上拆分一个带空格的字符串。但这种分裂工作非常糟糕。
尝试运行以下代码一次:
var d = "mod india jned cjkdem demdjkjncj kdeknd kmdke kmdekmd".split(" ");
document.getElementById("result").innerHTML = JSON.stringify(d);
<div id="result"></div>
预期输出应该是所有单词的数组。
答案 0 :(得分:8)
您有一些空白字符不是普通空格(但是不间断的空格)。要捕获它们,请使用正则表达式/\s/
,如下所示:
var d = "mod india jned cjkdem demdjkjncj kdeknd kmdke kmdekmd".split(/\s/);
document.getElementById("result").innerHTML = JSON.stringify(d);
<div id="result"></div>
以下是使用charCodeAt(0)
:
var d = "mod india jned cjkdem demdjkjncj kdeknd kmdke kmdekmd".match(/\s/g)
.map(ch => ch.charCodeAt(0));
document.getElementById("result").innerHTML = JSON.stringify(d);
<div id="result"></div>
代码32代表普通空间,而160代表non-breaking space。