繁体   English   中英

检查并设置Javascript中的默认变量

[英]Checking and setting default variable in Javascript

假设您有一个跟踪对象

TRACK = {};
TRACK.pageName = pageName || TRACK.buildPageName();

如果在它之前的某处存在,这将很好地工作:

var pageName = "Home";

让我们假设一种解决方法是:

TRACK.pageName = (typeof pageName != 'undefined' ? pageName : TRACK.buildPageName());

是否有针对大型javascript对象的更好方法?

如果您使用的是浏览器,则可以执行window.pageName来检查pageName值。

TRACK.pageName = window.pageName !== undefined ? pageName : TRACK.buildPageName();

但这并不是真正的“更好”的实践。 这只是第二种方式。 使用typeof也可以。

你的例子:

TRACK.pageName = pageName || TRACK.buildPageName();

是正确的,但是如果您想使用undefined进行露营,可以使用以下方法:

if (pageName !== undefined){...}

我认为,您可以在TRACK.buildPageName()中实现此if语句。 如果pageName是全局变量,则可以从TRACK.buildPageName()内部访问它

{
...
    buildPageName: function() {
        this.pageName = (typeof pageName != 'undefined' ? pageName : TRACK.innerBuildPageName());
    }
}

因此,您只能隐藏和实现一次if语句。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM