javascript - 如果 jQuery 对象为空,则在赋值时将 var 设置为 null

标签 javascript jquery

如果 jQuery 对象的长度为 0,有没有办法让其在创建时计算结果为 false?

这是我想要做的事情:

var Constructor = function (config) {

  this.obj = $(config.id) || null;

};

但这不起作用——如果未传递 config.id 或未找到 #id,则 this.obj 变为一个计算结果为 true 的空 jQuery 对象。

我想要的是 this.obj 在创建时为 null (或者如果 arg/id 存在,则为填充的 jQuery 对象)并 避免检查生成的 jQuery 对象的长度。

最佳答案

您可以将 .length 测试包装在 jQuery 函数中:

$.fn.nonEmpty = function() {
  return this.length && this;
};

然后:

this.obj = $(config.id).nonEmpty() || null;

关于javascript - 如果 jQuery 对象为空,则在赋值时将 var 设置为 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24738898/

相关文章:

Javascript 无法在页面上运行?

javascript - jQuery 表单即使返回 true 也不会提交

javascript - 将页面加载到div中并在刷新后在div中保留相同的页面

javascript - 带有复选框和彩色色板的 flot.js 绘图不起作用

javascript - 使用node.js和socket.io向客户端发送信息时的延迟

javascript - 如何将值添加到空的 SELECT 中?

javascript - 经管理员批准后更新数据库

jquery - 加载网页时在右侧div中显示内容

javascript - jqmobile listview中元素之间的间距相等

jquery - 修复了 jquery 数据表上的 header