Chrome控制台从变量返回8 Nan

问题描述 投票:0回答:1

我正在使用以下功能

function QuantityCheckout () {
  var obj = {
    "BackGlassQty": Cookies.get('BackGlassQty'),
    "BackCameraQty": Cookies.get('BackCameraQty'),
    "BatteryQty": Cookies.get('BatteryQty'),
    "ChargingPortQty": Cookies.get('ChargingPortQty'),
    "FrontCameraQty": Cookies.get('FrontCameraQty'),
    "GlassCameraCoverQty": Cookies.get('GlassCameraCoverQty'),
    "LogicBoardQty": Cookies.get('LogicBoardQty'),
    "ScreenQty": Cookies.get('ScreenQty')
  };
  $.each(obj, function (key, value) {
    var test = '#' + key - 'qty' + 'Quantity'
    console.log(test);
    $('#' + key - 'qty' + 'Quantity').text('Quantity:' + value);
  });
}

并且它不断返回一个圆和NaNQuantity 8。

javascript jquery
1个回答
0
投票

这是因为当您连接字符串时,其中有一个负号,因此它正尝试进行数学计算,这就是为什么得到NaN

使用+连接字符串。

const Cookies = {
  get: () => {}
}

function QuantityCheckout () {
  var obj = {
    "BackGlassQty": Cookies.get('BackGlassQty'),
    "BackCameraQty": Cookies.get('BackCameraQty'),
    "BatteryQty": Cookies.get('BatteryQty'),
    "ChargingPortQty": Cookies.get('ChargingPortQty'),
    "FrontCameraQty": Cookies.get('FrontCameraQty'),
    "GlassCameraCoverQty": Cookies.get('GlassCameraCoverQty'),
    "LogicBoardQty": Cookies.get('LogicBoardQty'),
    "ScreenQty": Cookies.get('ScreenQty')
  };
  $.each(obj, function (key, value) {
    var test = '#' + key + 'qty' + 'Quantity'
    console.log(test);
    $('#' + key + 'qty' + 'Quantity').text('Quantity:' + value);
  });
}

QuantityCheckout()
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

或者,您也可以使用倒勾

var test = `#${key}qtyQuantity`
© www.soinside.com 2019 - 2024. All rights reserved.