jquery如果检查长对象
我知道dojo有这个function,但如何jQuery或任何其他图书馆?
$.ifObject(foo.bar.baz.qux[0]) if (foo && foo.bar && foo.bar.baz && foo.bar.baz.qux[0])
假设任意大小的对象嵌套,我正在寻找一个糖函数,将检查是否我正在寻找的对象被定义,并没有崩溃的服务器的方式。
如果你想深入咖啡脚本,它有一个伟大的function在?
运营商。
if foo?.bar?.baz?.qux?[0] alert 'yay!'
编译到这个讨厌,但非常有效的JavaScript
var _ref, _ref2, _ref3; if (typeof foo !== "undefined" && foo !== null ? (_ref = foo.bar) != null ? (_ref2 = _ref.baz) != null ? (_ref3 = _ref2.qux) != null ? _ref3[0] : void 0 : void 0 : void 0 : void 0) { alert('yay!'); }
最简单的方法是将variables引用放在try-catch
块中:
try { var val = foo.bar.baz.qux[0]; // succeeded: use val } catch (ex) { // failed: do something else }