语法错误代码 - Java 脚本

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

通常我的代码运行良好。但是,我收到语法错误。这里的语法错误是什么?

enter image description here

$(document).ready(function() {
$('.myClass').change(function() {
        var ids = ['first', 'second'];
        var totalCount = ids.reduce((prev, id) => parseInt($(`#${id}-passenger`).val()) + prev, 0);
        var mc = $('input[name="myClass"]:checked  + label').text();
        $('#myTotal').val(totalCount + ' - '+mc);
    });
});
javascript syntax-error
2个回答
4
投票

也许您有 Javascript 版本问题,您应该尝试不使用模板?

var totalCount = ids.reduce(function (prev, id) {
    return parseInt($('#' + id + '-passenger').val()) + prev
}, 0);

希望有帮助。


1
投票

您的代码完全有效并且工作正常。因此我猜测这个问题只是因为你使用的IDE中的JS linter已经过时并且不支持ES6。我建议使用更新的 linter(假设 IDE 允许您更改它),甚至完全使用更好的 IDE。

如果你想避免这个问题,你需要删除模板文字和箭头函数,如下所示:

$('.myClass').change(function() {
  var ids = ['first', 'second'];
  var totalCount = ids.reduce(function(prev, id) {
    return parseInt($('#' + id + '-passenger').val()) + prev, 10);
  }, 0);
  var mc = $('input[name="myClass"]:checked + label').text();
  $('#myTotal').val(totalCount + ' - ' + mc);
});
© www.soinside.com 2019 - 2024. All rights reserved.