以下是我在Java编译器中运行的代码:
我本希望这会得到 "Bob" 作为输出结果,但实际上我收到了
ScriptEngineManager factory = new ScriptEngineManager();
ScriptEngine engine = factory.getEngineByName("JavaScript");
engine.put("person", "{name: 'Bob', favoriteColor: 'red'}");
System.out.println(engine.get("person.name"));
我本希望这会得到 "Bob" 作为输出结果,但实际上我收到了
null
。如果只打印用户对象,输出是正确的:{name: 'Bob', favoriteColor: 'red'}
为什么person.name
的值是null
?非常感谢您的帮助!
person
的变量,然后尝试从user
中获取值。请改用person.name
。 - neuronautengine.get
嵌入到Java的打印语句中,那么它就可以正常工作。 - kshah