JavaScript

      Kleines Javascript-Quiz

      Für alle, die meinen Javascript schon immer bestens gekannt zu haben:

      Quellcode

      1. let
      2. ⵔ = (... ⴵ) => console.log(... ⴵ)
      3. , ⴲ = Array.prototype
      4. , ⵑ = ⴵ => ⴵ()
      5. , ⵕ = []
      6. , ⵚ = []
      7. , ⵁ = ⵕ
      8. , ⵌ = [ 1, 2, 3 ]
      9. ⴲ.ⵂ = ⴲ.push
      10. ⴲ.ⵈ = ⴲ.map
      11. for ( var ⵘ of ⵌ ) ⵕ.ⵂ(() => ⵘ); ⵔ(ⵕ.ⵈ(ⵑ))
      12. for ( let ⵘ of ⵌ ) ⵚ.ⵂ(() => ⵘ); ⵔ(ⵚ.ⵈ(ⵑ))
      13. for ( let ⵘ of ⵌ ) ⵁ.ⵂ(() => ⵘ); ⵔ(ⵁ.ⵈ(ⵑ))

      Frage 1: Warum liefern Zeile 13 und 14 Unterschiedliches?
      Frage 2: Warum liefert Zeile 15 etwas Anderes als Zeile 13, obwohl der Input in Zeile 7 eine Variable mit dem gleichen Wert zugewiesen bekommt?

      Wer es versteht, ist ziemlich fit in Javascript, wer nicht, bei dem reicht es vielleicht trotzdem zum "Hausgebrauch", es könnte aber nicht schaden, die Kenntnisse um die neueren, durchaus praktisch nützlichen Entwicklungen aufzufrischen.

      Anmerkung: Internet Explorer versagt, Firefox rechnet falsch, Chrome, Edge, Opera und node.js 7 machen es richtig.
      Weiß jemand weshalb mit dieser Funktion ein Fehler erscheint?

      Quellcode

      1. function copy()
      2. {
      3. var myObject, f;
      4. myObject = new ActiveXObject("Scripting.FileSystemObject");
      5. f = myObject.file.copy("C:\\test.txt", "C:\\mytest.txt");
      6. }
      7. copy();


      Fehlermeldung. Er meckert wegen .file.


      Kann das mal bitte jemand testen, ob das nur bei mir so ist. Die Funktion muss als Datei mit Endung js gespeichert und dann doppelgeklickt werden. Vorher eine Datei test.txt in C:\ anlegen.

      Diese nächste Funktion funktioniert bei mir, wenn man sie als .js Datei ausführt und sich eine Textdatei in Laufwerk C:\ befindet, sprich die Datei wird gelöscht. An MS JScript kann es also nicht liegen, auch weil ich ja schon andere JScripte ausgeführt habe.

      Quellcode

      1. function remove()
      2. {
      3. var myObject, f;
      4. myObject = new ActiveXObject("Scripting.FileSystemObject");
      5. f = myObject.GetFile("C:\\test.txt");
      6. f.Delete();
      7. }
      8. remove();


      JavaScript Experten hier?