2016-11-09 3 views
2

Ich bin ein MQTT Client für node.jsUnterschied zwischen als const und var in node.js Import-Modul

Auf diesem Link https://blog.risingstack.com/getting-started-with-nodejs-and-mqtt/, MQTT Modul wird wie folgt eingeführt werden;

const mqtt = require('mqtt') 
const client = mqtt.connect('mqtt://broker.hivemq.com') 

Die Art, wie ich meinen Modulimport mache, ist so;

var mqtt = require('mqtt') 
var client = mqtt.connect('mqtt://broker.hivemq.com') 

Was ist der Unterschied zwischen den 2 Möglichkeiten, var und const? Was ist, wenn ich den Import auf diese Weise mache?

let mqtt = require('mqtt') 
let client = mqtt.connect('mqtt://broker.hivemq.com') 

Ist es wichtig? Welcher ist der richtige Programmierweg?

Ich bin mit node.js v6

Antwort

8

Unabhängig davon, ob Sie verwenden es für einen require oder nicht, const bedeutet, dass die Variable nicht neu zugewiesen werden kann, während let es neu zugeordnet werden können. Sowohl let als auch const sind Block-Bereiche, während var Funktionsbereich ist. Im Allgemeinen empfehlen die meisten Leute, die ES6-kompatible Dinge verwenden (welcher Knoten v6 größtenteils ES6-kompatibel ist), const und let vorzuziehen und nie (oder selten) var zu verwenden. Dies führt tendenziell zu dem Scoping-Verhalten, das die meisten Leute erwarten, insbesondere wenn sie aus einer anderen Sprache kommen.

Im Fall Ihrer require Anweisungen kann ich mir keinen Fall vorstellen, in dem Sie diese Variablen jemals neu zuweisen möchten, daher sollte const die bevorzugte Methode sein.

+0

was ist mit der Verwendung von Import, so: Import Kreide = erfordern ('Kreide'); – ramon22

+0

Ich habe diese Syntax noch nie vor @ ramon22 gesehen. Ich habe nur 'Importkreide von 'Kreide' gesehen. – Paul

Verwandte Themen