我对elipsis很新,但即使我将变量指定为false,以下内容也会返回true。
PS:注意iff条件。
import system.obj.* from elipsis.system;
iff(elem in system.obj.elem) {
println('in true')
}
答案 0 :(得分:1)
in
关键字检查对象是否包含提到的属性。您要求酒店内的房产。
您实际上应该向对象询问该属性,如下所示:
iff(elem in system.obj) {
println('in true')
}
顺便说一句,in
关键字不检查值,只是属性存在。将属性设置为false
会使其存在,但值为false
,因此它将始终返回true
。
要删除JavaScript中的属性,您必须使用delete
关键字:
system.obj.elem = true;
iff(elem in system.obj) {
println('in exists'); // CODE REACHED
}
system.obj.elem = false;
iff(elem in system.obj) {
println('in exists'); // CODE REACHED
}
delete system.obj.elem;
iff(elem in system.obj) {
println('in exists'); // CODE NOT REACHED
}
我不知道iff
是否真的是真正的代码,你有某种转换器或者是拼写错误。在JavaScript中它不存在。在互联网上搜索了一下,我认为这是一个错字。
答案 1 :(得分:0)
试试这个,
import system.obj.* from elipsis.system;
iff(elem in system.obj) { println('in true') }