4
스크립트 엔진에 전달한 Java HashMap이 있습니다. 나중에 잘못된 키를보고하기 때문에 처리되는 항목을 삭제하고 싶습니다. 항목을 제거하는 명백한 일반적인 방법 (delete testMap['key'];
)은 아무 효과가 없습니다.Nashorn 내에서 Java Map에서 요소를 제거하는 방법 JavaScript
이 테스트를 통과하려면 어떻게해야합니까?
@Test
public void mapDelete() throws ScriptException{
Map<String,String> map = new HashMap<>(1);
map.put("key","value");
ScriptEngine engine = new ScriptEngineManager().getEngineByName("JavaScript");
engine.getContext().getBindings(ScriptContext.GLOBAL_SCOPE).put ("testMap", map);
engine.eval("delete testMap['key'];");
Assert.assertEquals (0, map.size());
}
완벽하게 사용할 수 있습니다! 고맙습니다. –