我有以下几点:如何设置一个JavaScript变量为“”,如果它是未定义的?
var viewID = $(link).data('dialog-id')
这工作时,有值对话框的ID。但是,当没有值时,viewID将获得“undefined”的值。
有没有一种方法可以使viewID的值等于一个空字符串,如果dialog-id不可用,或者如果它可用,等于dialog-id?
我有以下几点:如何设置一个JavaScript变量为“”,如果它是未定义的?
var viewID = $(link).data('dialog-id')
这工作时,有值对话框的ID。但是,当没有值时,viewID将获得“undefined”的值。
有没有一种方法可以使viewID的值等于一个空字符串,如果dialog-id不可用,或者如果它可用,等于dialog-id?
你可以这样做:
var viewID = $(link).data('dialog-id') || '';
其中一期工程由于使用Javascript处理short-circuit evaluation的方式。
var viewID = $(link).data('dialog-id') == undefined ? "" : $(link).data('dialog-id');
或者:
var viewID = $(link).data('dialog-id')
if (viewID == null) {
viewID = '';
}
这也适用,因为undefined
和null
被视为相等。
最简单的方法是使用||
操作
var viewID = $(link).data('dialog-id') || '';
的 '||'运算符在左侧和右侧取值。如果左边的值是真的,那么它将被返回,否则正确的值将是。值undefined
是falsy因此,如果它从data('dialog-id')
呼叫返回然后它会选择''
而不是
+1击败了我的几个调子:) – 2012-02-15 15:32:39