什么对象在JavaScript中具有`{name = value}`的String表示?

问题描述 投票:2回答:1

我在JavaScript中接收了一个复杂的value(在JDK Nashorn引擎内部),我必须与之交互。该值以{shown=true}的形式打印到控制台。当我说typeof value我收到object作为答案。当我说Object.keys(value);我收到TypeError: {shown=true} is not an Object in ...。乳清我说value.shownvalue["shown"]我总是收到null

什么类型是这个神秘的对象,我如何正确访问“显示”属性的值?

不幸的是,创建一个简单的例子并不容易,我不能交互式调试...任何帮助都非常感谢!

编辑:JDK是JavaSE-1.8。

调用JSON.parse(value);导致

javax.script.ScriptException: SyntaxError: Invalid JSON: <json>:1:1 Expected , or } but found s
{shown=true}
 ^ 
javascript nashorn
1个回答
0
投票

假设你得到的是一个Java对象,你应该能够调用value.getClass()来获取它的Java类。

从它的字符串表示,它可能是java.util.HashMap或类似的实例。如果是这样,您应该能够通过value.get("shown")访问“显示”属性的值。

© www.soinside.com 2019 - 2024. All rights reserved.