作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我从服务器获得了 LaTex 代码并且无法控制它。我想在使用 JavaScript 时打印 LaTex 代码,但它在分配给变量时解释为控制字符。
var str = '\[\frac{{{d^2}y}}{{d{x^2}}} - \,3\,\left( {\frac{{dy}}{{dx}}} \right)\, + \,2y\, = \,0\]';
这个解释如下
[rac{{{d^2}y}}{{d{x^2}}} - ,3,left( {rac{{dy}}{{dx}}} ight), + ,2y, = ,0]
我想要如下:
\[\frac{{{d^2}y}}{{d{x^2}}} - \,3\,\left( {\frac{{dy}}{{dx}}} \right)\, + \,2y\, = \,0\]
我尝试了不同的正则表达式,结果
var index = str.indexOf("\\")
是-1
JavaScript 删除了控制字符,如\f、\r 等,TeX 中有成千上万的反斜杠符号。
最佳答案
str var是怎么加载的?
无论如何,有一个解决方法( working here ):
var c=',[]flr';
for(var i=0;i<c.length;i++)
eval("str=str.replace(/\\"+c.charAt(i)+"/g,'\\\\"+c.charAt(i)+"');");
我们所做的是对 c 中的任何字符执行以下代码(用字符替换 X):
str=str.replace(/\X/g,'\\X');
无论如何,有一个解决方法( working here ):
var c=',[]flr';
for(var i=0;i<c.length;i++)
eval("str=str.replace(/\\"+c.charAt(i)+"/g,'\\\\"+c.charAt(i)+"');");
我们所做的是对 c 中的任何字符执行以下代码(用字符替换 X):
str=str.replace(/\X/g,'\\X');
好的,这是传送 JSON 的站点上的一个奇怪(而且可能是危险的)错误。如果它没有把\' 变成\',也许它不会把 ' 变成\'。因此,在 ' 或 "之后的任何内容(取决于字符串的引用方式)都将在包含该内容的任何网站(即您的网站)上执行。可能作为 JSON更安全一些。
关于javascript - 反斜杠在 JavaScript 中被解释为控制字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22980799/
我是一名优秀的程序员,十分优秀!