为什么我看到使用string.split()创建的javascript数组?

时间:2010-06-18 12:53:44

标签: javascript syntax

我在整个网络上看到这样的代码

var days= "Monday Tuesday Wednesday Thursday Friday Saturday Sunday".split(" ");

为什么要这样做而不是

var days = ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"];

我不认为懒惰或无知与它有任何关系。这是jQuery 1.4.2

props: "altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" ")

他们到处都是。

4 个答案:

答案 0 :(得分:11)

我认为这是因为您不必引用并分隔数组的每个字符串。同样,在perl中,许多人使用qw(a b c d e f g)而不是('a', 'b', 'c', 'd', 'e', 'f', 'g')。所以好处是双重的:

  1. 编写和修改的速度更快更容易(显然可以辩论)。
  2. 它的位数较小,因此您可以节省一些带宽。
  3. 查看位大小:

    var days= "Monday Tuesday Wednesday Thursday Friday Saturday Sunday".split(" ");
    // 81 characters
    

    VS

    var days = ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"];
    // 91 characters
    

答案 1 :(得分:0)

如果初始字符串在文本中有引号或双引号,也可能有意义。

答案 2 :(得分:0)

“81个字符和91个字符”<<很好的观察,但它再次增加了很少的处理时间来将String转换为数组,如果有时需要添加一些包含2个单词的内容。

可能他们喜欢这种编码风格。

IDK

答案 3 :(得分:0)

您可以在20种语言中使用20个字符串的工作日名称,并使用单个拆分为用户返回正确的数组。