在javascript函数中from = mean是什么意思?

时间:2012-11-13 06:51:33

标签: javascript jquery

我有以下电话:

 $.extend($.fn.dataTableExt.oSort, {
        "datetime-uk-pre": function (a) {
            from = a.split(' ');
            var ukDatea = from[0].split('/');
            var ukTimea = from[1].split(':');
            return (ukDatea[2] + ukDatea[1] + ukDatea[0] + ukTimea[1] + ukTimea[0]) * 1;
        }

有人可以解释“from =”在这里做了什么。我注意到,当我跑 JSHint然后它告诉我'from'没有定义。

4 个答案:

答案 0 :(得分:5)

  

有人可以解释“from =”在这里做了什么。

它为名为from

的变量赋值
  

我注意到当我运行JSHint时它会告诉我'from'没有定义。

看起来应该是var from =。 (或者from旨在用于更广泛的范围,但它在更广泛的范围内看起来不是一个有用的变量,如果是这种情况,应该仍然有{{1}更高的范围链)。

如果没有var from;,则会创建一个全局变量。

答案 1 :(得分:0)

看起来就像它只是一个变量

from = a.split(' ');

可以在当前函数范围之外访问,这是一个数组..

答案 2 :(得分:0)

它只是一个变量。 from并不代表JavaScript中的任何特殊内容。如果他们使用了正确的编码习惯,可能会在var from某地宣布它。尝试搜索该字符串。

如果JSHint抱怨它,它可能没有被正确声明。您可能希望将该行重写为var from = a.split(' ');以获得最佳实践。

答案 3 :(得分:0)

from只是变量的名称,就像上面代码中的ukDateaukTimea一样。在JavaScript中,如果您使用新的变量名而不使用之前的关键字var,则该变量将变为全局变量,这是JSHint在声明未定义from时尝试告诉您的变量。

它应该在代码中的其他位置定义(例如var from),或者您需要在此处添加var关键字,这将使该行看起来像这样:

var from = a.split(' ');