前端传的换行符\n为何返回的json会直接换行报错

这次遇到一个小问题,但是头疼的解决了很久才弄好
前端传给后台一个字段是一段文本,有换行的文本
传的格式是这样的
test:'1\n2\n3'

但是在其他页面后台把这个字段返回的时候就成了这样
test:'
1
2
3'
直接换行的json数据会报错啊

后端说数据库里的数据是我传的格式,传过来这样,不是他的锅
好哒,这锅只有我接了,但是以前没遇到这种问题的宝宝简直心塞啊
后端还给我一个建议,传的时候把\n换成别的,接收的时候再转一遍
要是少量的地方我就算了,但是这个不是那么简单的事情啊,一大多的判断,还好几个页面都是这个问题,
我要的就是少写代码解决

最后另一位大神告诉小白,把\n换成\\n就可以了,接收的时候正常接收,不用再转义了
好,那就没问题了,虽然还是要改一些地方,但少做3/4的工作就算不错了

//把换行符换成\\n
function TransferString(content)    
{    
    var string = content;    
    try{    
        string=string.replace(/\r\n/g,"\\n")    
        string=string.replace(/\n/g,"\\n");    
    }catch(e) {    
        alert(e.message);    
    }    
    return string;    
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。