我想知道有没有更好的方法:
var name = $('input').attr("name") != "undefined" ? $('input').attr("name") : "";
Run Code Online (Sandbox Code Playgroud)
在这里,我正在阅读的name属性input.我的问题是当我阅读name新创建的text元素时,它就是undefined.因此,为了不undefined向用户显示我必须进行此检查.现在我必须准备好这么多属性,然后存在同样的问题,这就是为什么我想知道,有没有更好的方法来处理这个?
您不必明确地将其与undefined进行比较.当在if语句中使用时,undefined将返回false.通过使用OR操作,您可以在这种情况下分配空字符串.
var name = $('input').attr("name") || '';
Run Code Online (Sandbox Code Playgroud)
"undefined"在JavaScript中也未定义且不相等.您的原始代码已经得到假阴性.