gpt4 book ai didi

javascript - 使用 jint 评估 javascript 对象

转载 作者:行者123 更新时间:2023-12-03 03:54:28 30 4
gpt4 key购买 nike

我使用 jint 来解析 javascript 代码,以下 js 代码可以工作:

  • 1
  • [1]
  • {}

但是这个失败了:

{a:1}

出现此错误:

int.Parser.ParserException: Line 1: Unexpected token :
at Jint.Parser.JavaScriptParser.ThrowError(Token token, String messageFormat, Object[] arguments)
at Jint.Parser.JavaScriptParser.ThrowUnexpected(Token token)
at Jint.Parser.JavaScriptParser.ConsumeSemicolon()
at Jint.Parser.JavaScriptParser.ParseStatement()
at Jint.Parser.JavaScriptParser.ParseStatement()
at Jint.Parser.JavaScriptParser.ParseSourceElement()
at Jint.Parser.JavaScriptParser.ParseStatementList()
at Jint.Parser.JavaScriptParser.ParseBlock()
at Jint.Parser.JavaScriptParser.ParseStatement()
at Jint.Parser.JavaScriptParser.ParseSourceElement()
at Jint.Parser.JavaScriptParser.ParseSourceElements()
at Jint.Parser.JavaScriptParser.ParseProgram()
at Jint.Parser.JavaScriptParser.Parse(String code, ParserOptions options)
at Jint.Engine.Execute(String source)

我不想反序列化 JSON 文件,我想执行一个 javascript 对象,我想要类似的东西:

{
id: 'one',
code: function() { console.log('hello'); }
}

我注意到如果我这样做:

var x = {a: 1}
x

然后它就可以工作了,但我需要它在我的场景中成为一个 javascript 对象。

有办法实现吗?

最佳答案

{ a: 1} 被解释为 block 语句而不是对象文字。解决方案是将其括在括号中:

({ a: 1 })

关于javascript - 使用 jint 评估 javascript 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45016307/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com