2016-05-21 7 views
0

Dies ist nicht wirklich eine Code-schwere Frage, da es eher ein Konzept-Typ ist.NodeJS Zwei "Require" -Parameter

var args = require('minimist')(process.argv.slice(2), {string: "name"}); 

Wie funktioniert der obige Code? Ich verstehe, dass ich die Minimist-Bibliothek aus dem NPM einschließe, aber ich verstehe nicht ganz, warum es (process.argv.slice (2)) gibt. Es gibt zwei offene enge Klammern über ihnen.

Ich weiß nicht, wie dieser Prozess in Javascript aufgerufen wird. Gibt es einen Namen für diese Form der Nutzung ('minimist') (process.argv.slice ....)?

+0

Die require-Anweisung gibt die im Modul "minimist" definierten Module.exports zurück, bei denen es sich um eine Funktion handelt, und die Klammern verwenden die Funktion mit 2 Parametern. Der Rückgabewert wird in der Variable "args" gespeichert. – samsonthehero

Antwort

3

Ihr Code entspricht:

var minimist = require('minimist'); 
var args = minimist(process.argv.slice(2), {string: "name"}); 

Das heißt, die zweite Klammer des Codes tatsächlich Aufruf minimist (oder vielmehr die von der minimist Modul exportierte Funktion) mit zwei Argumenten:

  1. process.argv.slice(2): Alle Argumente von der Befehlszeile
  2. {string: "name"}: Das Optionsobjekt

Mir ist kein offizieller Name bekannt.