Als io.js jetzt supports ES6 können Sie endlich die const
und let
Schlüsselwörter verwenden. Offensichtlich ist let
der Nachfolger von var
, nur mit einigen Superkräften.const vs Lassen Sie beim Aufruf erfordern
Aber was ist mit const
? Ich weiß natürlich, was "konstant" bedeutet, aber ich habe mich gefragt, wann ich es verwenden sollte (bezüglich Best Practices).
Z. B., wenn ich ein Modul erstellen, das ein anderes Modul benötigt, könnte ich schreiben:
'use strict';
const util = require('util');
const foo = function() {
// Do something with util
};
module.exports = foo;
Grundsätzlich ich jedes Vorkommen von var
mit const
ersetzt haben. Im Allgemeinen denke ich, dass dies in Ordnung ist, aber wenn ich diesem Muster folge, verlässt es mich viel mehr von const
als let
, da die meisten Variablen keine "Variablen" im wörtlichen Sinne sind.
Ist das ein guter Stil? Soll ich lieber let
gehen? Wann sollte ich const
über let
wählen?
Ich würde erwarten, dass "const" alle in Großbuchstaben sind, wie zum Beispiel 'const KEY_A = 65'. – elclanrs
Die Art, wie ich darüber nachdenke, ist, dass ein 'const' verwendet werden sollte, wenn der Wert niemals geändert oder wichtiger vor Änderungen geschützt werden soll. 'let' sollte verwendet werden, wenn der Wert später überschrieben/geändert werden soll, und beide sollten verwendet werden, wenn Sie eine Blockbereichsvariable benötigen und keine Variable, die auf eine Funktion beschränkt ist. Wenn Sie eine Funktionsbereichsvariable benötigen, ist 'var' immer noch verfügbar. Ich könnte mich irren, ich habe nicht viel über ES6/2015 gelesen. – adeneo
Das Deklarieren von 'util' als 'const' bedeutet nur, dass diese Variable nicht auf einen anderen Wert gesetzt werden kann. ** Allerdings ** können Sie Eigenschaften hinzufügen, ändern und daraus entfernen, wenn es sich nicht um ein primitives Element handelt. – idbehold