不知道父对象是否存在时,如何安全访问对象的子属性?
function safelyGet(obj, path, fallback = undefined) { let needle = obj; const found = path.every(el => { if (needle[el] === undefined) return false; needle = needle[el]; return true; }); return found ? needle : fallback; } // Usage const myObj = { user: { bio: { age: 25 } } } const age = safelyGet(myObj, ["user", "bio", "age"]); console.log(age); // 25 const permissions = safelyGet(myObj, ["user", "auth", "permissions"], "none"); console.log(permissions); // "none"
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论