如何将中的特殊字符转换为转义序列

问题描述:

我在写一个条形码应用程序,用户可以指定终止字符。如何将<input>中的特殊字符转换为转义序列

考虑以下几点:

<input id="terminators" type="text" value="\n" /> 

当我读从输入端的值,转义序列\n被返回作为两个单独的字符\n。而我需要它作为一个\n(ASCII字符10)

您可以重现此问题的浏览器控制台:

document.getElementById('terminators').value.charCodeAt(0) === '\n'.charCodeAt(0); 
+2

请澄清得到你的问题,如预期:

我们可以使用下面的测试验证vs实际结果。 –

+2

输入值的长度与使用其值作为字符有什么关系? – BenM

+0

一点都不清楚你在问什么 – charlietfl

想通了。输入的值逃脱附加\,所以\n成为\\n

document.getElementById('terminators').value.charCodeAt(0) === '\\n'.charCodeAt(0) 

https://jsfiddle.net/v9b348z3/