可选链操作符( ?. )允许读取位于连接对象链深处的属性的值,而不必明确验证链中的每个引用是否有效。详细用法参考:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Operators/Optional_chaining
一、语法
obj?.prop
obj?.[expr]
arr?.[index]
func?.(args)
二、示例
let test = (config) => {
//原来我们要获取config里面的db节点的host节点数据的时候,我们可能会写如下的代码进行获取
//const dbHost = config && config.db && config.db.host;
//有了可链选操作符之后,我们可以简化成如下
const dbHost = config?.db?.host;
console.log(dbHost)
}
const config = {
db: {
host: '192.168.0.1',
username: 'root'
},
cache: {
host: '192.168.0.2',
username: 'admin'
}
};
test(config);
网友评论