Ecmascript 保留字解决方法
我正在开发一个基于 Novell Operations Center 构建的项目,该项目具有基于 Ecmascript 的脚本引擎。我能够寻址运行软件的 Java API 中的对象。
我正在尝试使用标准 Java java.io.File 类从文件系统中删除文件。
脚本如下:
var file = new java.io.File('file_path');
file.delete();
这会引发错误,因为“delete”是 Ecmascript/Javascript 中的保留字。 即使我使用 eval('file.delete()');
我也会得到同样的错误。 file.exists()
或 file.canWrite()
等语句按预期运行。
我正在寻找一种可能的解决方法,以便能够在文件对象上调用删除方法。 deleteOnExit() 方法不起作用,因为服务器软件不会定期退出。
I am working on a project which is built on Novell Operations Center which has a scripting engine based on Ecmascript. I am able to address objects in the Java API on which the software is running.
I am trying to remove a file from the file system using the standard Java java.io.File class.
The script is as followed:
var file = new java.io.File('file_path');
file.delete();
This throws an error because "delete" is a reserved word in Ecmascript/Javascript.
Even if I use eval('file.delete()');
I get the same error. Statements like file.exists()
or file.canWrite()
run as expected.
I am looking for a possible work around to be able to call the delete method on a file object. The deleteOnExit() method won't work because the server software will not exit on a regular base.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您始终可以使用括号表示法:
You always can use the bracket notation: