将随机数传递给onchange函数

时间:2015-06-23 08:14:03

标签: javascript jquery google-chrome

在改变时我试图将随机数传递给函数。在Firefox中,它工作正常,但在Chrome中它不起作用,甚至没有抛出错误,内部编写的代码也没有被执行

如果我删除rand,里面的代码将正常工作

$(document.body).on('change', '.hiddenupload', function (e, rand = Math.floor((Math.random() * 10000) + 1)) {
    array[rand]=$(this);
   //other code
}

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

在JavaScript中,您无法将变量值作为函数参数赋值。所以你必须传递变量,对象,函数,字符串或数字,但是你不能分配值。

function(a, function(b, c){  }) // works

function(a, {b: c}) // works

function(a = b, c) // does not work in javascript

修改

作为解决方法,您可以直接在函数内部分配该变量:

$(document.body).on('change', '.hiddenupload', function (e) {
    var rand = Math.floor((Math.random() * 10000) + 1);
});