gpt4 book ai didi

javascript - 如何检查对象中的 hasOwnProperty 链

转载 作者:太空宇宙 更新时间:2023-11-04 02:50:07 25 4
gpt4 key购买 nike

我有这样的 json

var a = {
"name": "test1",
"redisData": {
"redisIp": "127.0.0.1",
"dbSetting": {
"dbIp": "127.0.0.1",
"dbUserName": "root",
"dbUserPassword": "root",
},
"otherData":{
"email":"a@gmail.com"
}
}
}

所以当所有数据都存在于所有键中时,我必须将这些数据推送到数据库中为此,我必须像这样验证该数据

if (a.hasOwnProperty("redisData")) {
if (a.redisData.hasOwnProperty("dbSetting")) {
if (a.redisData.dbSetting.hasOwnProperty("dbIp")) {
if (a.redisData.dbSetting.dbIp) {
// now insert in to database
} else {
alert('DB server Ip missing');
}
} else {
alert('DB server Ip missing');
}
} else {
alert('DB server Ip missing');
}
} else {
alert('DB server Ip missing');
}

但是这段代码看起来很难看。我们是否有更好的方法来避免多个 if 条件和 hasownproperty 的链接。

最佳答案

简单:只需检查值是否存在并且具有真值:

if (a.redisData && a.redisData.dbSetting && a.redisData.dbSetting.dbIp) {
// now insert in to database
} else {
alert('DB server Ip missing');
}

此处使用 hasOwnProperty 并没有真正的优势。

关于javascript - 如何检查对象中的 hasOwnProperty 链,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51841235/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com