无法使用javascript从Java中解析完整的javascript if语句

时间:2011-07-18 18:13:18

标签: java javascript rhino scriptengine

所以我发布了这个问题 Putting a simple expression language into java 并得到一个很好的答案关于使用ScriptEngine允许用户编写我做过的javascript,它似乎工作

但是像

这样的表达
(artist.length>0 ? artist + '-' :'') + (album.length>0 ? album + '-' :'')

使用完整的if语句

if(artist.length>0) {artist + ':-'}   + (album.length>0 ? album + '-' :'') 

你可能会问为什么我这样做,我希望我可以使用if:else if:else语句,这是向前迈出的一步

1 个答案:

答案 0 :(得分:4)

这根本就不是有效的javascript。

<cond> ? <iftrue> : <iffalse>

是if-else的'expression'形式,并返回可以使用的值。

if {

} else {

}

是'statement'版本,用于执行代码,不返回值。