javascript - 如何对字符串化的 JavaScript 进行去字符串化?

标签 javascript parsing eval stringify

如何对已字符串化的 JavaScript 代码进行“去字符串化”? JSON.parse 似乎不起作用。我们希望将 JavaScript 代码存储在数据库中,然后检索它并对其进行评估。这是数据库中的代码:

//# sourceURL=journal.js

function onBlur(e) {

    var drAmount = script.getGridRowFieldValue('debitamount', e.rowuid)
    var crAmount = script.getGridRowFieldValue('creditamount', e.rowuid);

    // Prevent both debit and credit from having values.      
    if (drAmount != undefined && crAmount != undefined) {

        if (e.fieldname == 'debitamount') {
            script.setGridRowFieldValue('creditamount', e, undefined)
        } else if (e.fieldname == 'creditamount') {
            script.setGridRowFieldValue('debitamount', e, undefined)
        }

    }
}

这是返回的内容:

"//# sourceURL=journal.js\r\n\r\nexport function onBlur(e) {\r\n\r\n var drAmount = script.getGridRowFieldValue('debitamount', e.rowuid)\r\n var crAmount = script.getGridRowFieldValue('creditamount', e.rowuid);\r\n\r\n // Prevent both debit and credit from having values. \r\n if (drAmount != undefined && crAmount != undefined) {\r\n\r\n if (e.fieldname == 'debitamount') {\r\n script.setGridRowFieldValue('creditamount', e, undefined)\r\n } else if (e.fieldname == 'creditamount') {\r\n script.setGridRowFieldValue('debitamount', e, undefined)\r\n }\r\n\r\n }\r\n}\r\n\r\n\r\n\r\n\r\n"

最佳答案

参见eval 。它接受一个字符串作为参数,您只需将该字符串传递给它就可以了。

此外,请阅读并理解其他人提到的警告以及我链接到的文档中的警告。

关于javascript - 如何对字符串化的 JavaScript 进行去字符串化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29903583/

相关文章:

android - 检索 json 数据

r - 将 R 中的多个表达式组合成一个大表达式

perl - 我如何编写一个不在 eval block 中触发的 SIG{__DIE__} 处理程序?

bash - 在 bash 字符串变量中扩展花括号和通配符(不带 eval)

javascript - Electron 使用加速器调用上下文菜单中的菜单项

python - 无论如何要抓取重定向的链接?

java - 如何使用简单的 JSON 库将 json 文件读入 java

javascript - 如何自定义TinyMCE按钮输出

javascript - 删除对象数组中的空对象键

JavaScript isNaN 函数