gpt4 book ai didi

javascript - 如何检查 undefined variable javascript?

转载 作者:行者123 更新时间:2023-11-30 16:04:39 25 4
gpt4 key购买 nike

我的 Javascript 是这样的:

<script type="text/javascript">

var priceJson = '[{"@attributes":{"Code":"SGL","Total":"400000"},"DayPrice":{"Date":"2016-05-26","Rate":"400000"}},{"@attributes":{"Code":"DBL","Total":"200000"},"DayPrice":{"Date":"2016-05-26","Rate":"200000"}}]';

console.log(priceJson);
var priceObject = JSON.parse(priceJson);
console.log(priceObject);

if(priceObject.DayPrice.Rate)
priceObject = [priceObject];
else
priceObject = priceObject;

console.log(priceObject);
var priceJson = JSON.stringify(priceObject);
console.log(priceJson);

var countRoomType = priceObject.length;
for(var i=0; i<countRoomType; i++){
console.log(priceObject[i].DayPrice.Date);
console.log(priceObject[i].DayPrice.Rate);
}


</script>

演示(在控制台中查看):https://jsfiddle.net/oscar11/wsqdha8w/1/

变量 priceJson 具有动态值。该值可以是一个数据实例,也可以是一组数据。如果该值包含 1 个数据,那么我将转换为这样的数据数组:

if(priceObject.DayPrice.Rate)
priceObject = [priceObject];

但是,在控制台中出现以下错误:TypeError: priceObject.DayPrice is undefined

有什么办法可以解决我的问题吗?

最佳答案

根据您的错误消息判断,您还需要检查 DayPrice 是否存在。

if( priceObject.DayPrice && priceObject.DayPrice.Rate )

这个if 条件有两个步骤。

  • 首先它检查DayPrice是否存在,
  • 其次它检查DayPrice.Rate 是否存在

如果第一个条件失败,它不会检查第二个条件

关于javascript - 如何检查 undefined variable javascript?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37225834/

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