[英]how to escape special characters within eval using javascript?
var input;
// method 1
input = document.getElementById('address').value;
alert(input)
// method 2
eval('input = "'+document.getElementById('address').value+'"')
alert(input)
方法 1 工作正常,但方法 2在輸入換行符時不起作用,並顯示“未終止的字符串文字” 。
無論如何,我需要使用eval存儲值。 所以請幫助我。
使用string.replace(/\\r?\\n/g, "\\\\n")
來轉義換行符。
那是因為您實際上正在評估看起來像這樣的代碼,這在 javascript 中當然是錯誤的
var test = "Lorem ipsum
dolor sit amet";
為什么需要評估? 在這種情況下,它看起來沒有必要。 也許我們可以幫助您解決評估問題?
嘗試:
const address = document.getElementById('address').value
eval('input = ' + JSON.stringify(String(address)))
String(address) 將保證該對象是一個字符串。 JSON.stringify 將返回一個可使用 eval 解析的雙引號字符串。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.