Javascript 不会将 json 元素识别为数字



我正在处理一个JSON对象,并希望用两个小数点显示一个数字,但是JavaScript说该类型是"未定义"。

我尝试使用.tofixed(2),number()和parsefloat()将其迫使它为一个数字,并且我甚至尝试过string()将其迫使它更改为字符串,但它固执地仍然是"未定义"。typeof甚至都不被认为是原始元素的属性。

肯定有一种方法可以转换/正确定义它。我感谢帮助,并解释为什么我的工作不起作用。

data = {
  list: {
    9: {
      balance: 256.3999999999942
    }
  },
  action: 'load',
  status: 'ACCTLOADED'
}
showAccounts(data);
function showAccounts(data) {
  action = data.action;
  status = data.status;
  accs = data.list;
  if ((action == 'load') && (status == 'ACCTLOADED')) { // data retrieved
    $.each(accs, function(acc, details) { // display each account
      let bal = 0;
      bal = Number(details.balance);
      console.log('bal ' + bal + bal.typeof);
    });
  }
} // end function showAccounts
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

我认为BAL已经是数字的类型。使用:

console.log('bal ' + bal + typeof bal);

最新更新