测试缺失.data()结果



我将如何读取数据属性的值并检查属性是否不存在?

例如:

var value = $(selector).data('myData');

检查data-myData属性是否丢失或不包含数据的最可靠方法是什么?如果丢失了,我做``value. length'',那我会得到一个错误。

我知道我可以使用hasData(),但是,如果数据存在,我需要它,并且两次检查值的效率较低。

我通常只是这样做:

var value = $(selector).data('myData') || ''; 
                                 // or || 0;
                                 // or || someBackupVariable;
                                 // (just depends on what you want/need)

至少以这种方式,您具有备份值,因此,当您对变量value进行操作时,它不会破坏它。

JSFIDDLE DEMO

如何获得这样的值:

var value = $(selector).data('myData');
if (!value) do a hasData() 

我不认为它是效率低下的,但是如果您真的不想阅读两次,则应检查undefined

value = $(selector).data('myData');
if (typeof value === "undefined") {
    ...

相关内容

最新更新