防止javascript为字符串解析反斜杠

防止javascript为字符串解析反斜杠,javascript,string,parsing,backslash,Javascript,String,Parsing,Backslash,Flash AS3 IRC应用程序将类似“f\reak”的字符串传递给JavaScript。IRC允许\in用户名,这在传递到JavaScript时会造成问题。 “f\reak”在javascript中变为“feak”,将\r转换为回车符。 有没有办法读取字符串的绝对值而不是解析回车符? 这些方法不起作用 str.valueOf() str.toString() str.charAt(位置\)这只是看到回车,而不是反斜杠,虽然这似乎不是一种最佳方式,但我可以向您推荐一件事。因此,首先您需要了解j

Flash AS3 IRC应用程序将类似“f\reak”的字符串传递给JavaScript。IRC允许\in用户名,这在传递到JavaScript时会造成问题。 “f\reak”在javascript中变为“feak”,将\r转换为回车符。 有没有办法读取字符串的绝对值而不是解析回车符? 这些方法不起作用
str.valueOf()
str.toString()

str.charAt(位置\)这只是看到回车,而不是反斜杠,虽然这似乎不是一种最佳方式,但我可以向您推荐一件事。因此,首先您需要了解javascript中的所有转义序列。你可以得到那些。现在,由于没有太多的转义序列,您可以在提供的字符串中单独检查每个转义序列的存在。要做到这一点,您可以使用

if(str.length!=str.replace("\r","")) //To check whether "\r" is present or not.

类似地,您必须对其他转义序列执行此操作。因此,不管怎样,对于任何字符串,您至少会知道是否有转义序列,如果有,您可以根据需要处理该字符串。

有些东西听起来不对劲。你确定你的JavaScript被传递了一个实际的反斜杠,而不仅仅是Flash应用程序出错了吗?ActionScript是一个基于ECMAScript(又名.JavaScript)的脚本,使用了相同的转义字符,因此问题可能在Flash应用程序中出现。转义仅与字符串文字或使用其他转义字符打印到其他系统时相关。我的观点是flash应用程序可能正在向您发送回车,javascript将其正确处理为回车。。。