语法错误代码 - Java脚本

时间:2018-06-14 12:05:48

标签: javascript jquery syntax syntax-error

通常我的代码工作正常。但是,我得到了Syntax错误。这里的语法有什么错误?

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);
    });
});

2 个答案:

答案 0 :(得分:4)

也许你有一个Javascript版本问题,你应该尝试没有模板?

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

希望它有所帮助。

答案 1 :(得分: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);
});