ich: concat

Hallo liebe JS-Profis,
ich habe zwei Zeichenketten und will diese zusammenbringen.
var a="a";
var b="b";
Wo liegt der Unterschied zwischen

a.concat(b);

und

a+b

Danke

  1. @@ich:

    nuqneH

    Wo liegt der Unterschied zwischen
    a.concat(b);
    und
    a+b

    In der Ausführungszeit. Im Firefox 3.5 scheint erstes geringfügig schneller, im Chrome andersrum, im IE 8 konnte ich keine signifikanten UNterschiede feststellen.

    Qapla'

    --
    Alle Menschen sind klug. Die einen vorher, die anderen nachher. (John Steinbeck)
    1. @@Gunnar Bittersmann:

      nuqneH

      Oops, wennschon Benchmark, dann richtig!

      Firefox 3.5: fast gleich, geringer Vorteil für a + b.
      IE: Vorteil für a + b (Ausführungszeit etwa 3:2)
      Chrome: starker Vorteil für a + b (Ausführungszeit etwa 8:1)

      Code:

      var loops = 1000000;  
      var a = "a";  
      var b = "b";  
      var c, start, stop;  
        
      start = new Date();  
      for (var i = loops; i--;) c = a.concat(b);  
      stop = new Date();  
      var time_concat = stop.getTime() - start.getTime();  
        
      start = new Date();  
      for (var i = loops; i--;) c = a + b;  
      stop = new Date();  
      var time_plus = stop.getTime() - start.getTime();  
        
      alert(time_concat + " : " + time_plus + " (" + time_concat/time_plus + ")");
      

      Qapla'

      --
      Alle Menschen sind klug. Die einen vorher, die anderen nachher. (John Steinbeck)