记录一下学习源码中了解到一些开发编程技巧
判断嵌套对象内部的值是否存在
var i
// 业务中出现的多层嵌套的对象
var a = {
s: {
f: {
sf: 333,
},
},
}
// 一般的写法
if (a && a.s && a.s.f && a.s.f.sf) {
console.log(222)
}
// vue源码里使用的方法,上方的嵌套会随着层级越来越长,而下方的方法用了一个中间变量保证只有一层
if ((i = a) && (i = i.s) && (i = i.f) && (i = i.sf)) {
console.log(222)
}