为什么JS对象控制台日志给出NaN而不是Number?

时间:2015-11-12 15:23:15

标签: javascript jquery .net

从.NET后端我们通过GET方法收到Google Chrome的一个对象

Delivery {
 Id: 1, 
 ShippingDateTime: null, 
 ApproximateHandoverDateTime: null, 
 Charge: 527, 
 Cost: null
}

如果我们查看GET方法的预览Delivery.Charge527

但如果我们输入console.log(Delivery),则会Delivery.ChargeNaN !!!

此外,如果我们输入console.log(Delivery.Charge),则会提供527

发生了什么事?请解释一下!

更新 如果即使在GET方法之后我输入Delivery.Charge = 123无论如何console.log(交付)给了我Delivery.Charge为NaN。疯狂!

3 个答案:

答案 0 :(得分:1)

将您的媒体资源名称更改为“收费”以外的任何内容。

例如,费用 - > DeliveryCharge:

Delivery {
 Id: 1, 
 ShippingDateTime: null, 
 ApproximateHandoverDateTime: null, 
 DeliveryCharge: 527, 
 Cost: null
}

答案 1 :(得分:0)

对象的正确格式应为:

var Delivery = { 
    key:value,
    key:value
};

答案 2 :(得分:0)

我认为交货是一个对象,你无法直接打印出来 你必须在Java中编写一个与toString()相同的方法 例如,请参阅here

var Delivery  = {
Id: 1, 
ShippingDateTime: null, 
ApproximateHandoverDateTime: null, 
Charge: 527, 
Cost: null

}

function test(){
    alert(JSON.stringify(Delivery)) //you use stringify to get all elements of oject.

}