如果javascript变量未定义,如何将其设置为“”?

时间:2012-02-15 15:28:27

标签: jquery

我有以下内容:

var viewID = $(link).data('dialog-id')

当存在dialog-id值时,此方法有效。但是当没有值时,viewID会获得“undefined”的值。

如果对话框ID不可用,或者如果可用,则可以使viewID的值等于空字符串吗?

4 个答案:

答案 0 :(得分:6)

你可以这样做:

var viewID = $(link).data('dialog-id') || '';

这要归功于Javascript处理short-circuit evaluation的方式。

答案 1 :(得分:3)

var viewID = $(link).data('dialog-id') == undefined ? "" : $(link).data('dialog-id');

答案 2 :(得分:0)

可替换地:

var viewID = $(link).data('dialog-id')
if (viewID == null) {
    viewID = '';
}

这也有效,因为undefinednull被认为是平等的。

答案 3 :(得分:0)

最简单的方法是使用||运算符

var viewID = $(link).data('dialog-id') || '';

'||'运算符在左侧和右侧取值。如果左边的值是真实的,那么它将被返回,否则正确的值将是。值undefined是假的,因此如果它从data('dialog-id')调用返回,那么它将选择''而不是