13 Stimmen

Javascript: Was bedeutet die Funktion (_) Bedeutet

Ich gehe durch die bacon.js-Folien unter: http://raimohanska.github.io/bacon.js-slides/1.html

In der ersten Zeile des zweiten Blocks steht:

function always(value) { return function(_) { return value } }

was bedeutet function(_)?

25voto

user2864740 Punkte 57014

In diesem Fall ist _ nur ein Funktionsparameter - ein einzelner Unterstrich ist eine Konvention, die von einigen Programmierern verwendet wird, um "ignoriere diese Bindung/Parameter" anzuzeigen.

Da JavaScript keine Parameteranzahlprüfung durchführt, hätte der Parameter vollständig weggelassen werden können. Ein solcher "Wegwerf"-Bezeichner wird in anderen Sprachen häufiger gefunden, aber in einem Fall wie arr.forEach(function (_, i) {..}), wo _ angibt, dass der erste Parameter nicht verwendet wird.

13voto

Barmar Punkte 665497

Es handelt sich um eine anonyme Funktion mit einem Argument, dessen Name _ ist.

Ich weiß nicht, warum sie sich mit dem Argument abmühen, da die Funktion es nicht verwendet.

1voto

Oleg Gryb Punkte 4854

Es ist dasselbe wie das Hinzufügen eines anderen Bezeichners zu einer Liste von Argumenten gemäß diesem Dokument: http://mathiasbynens.be/notes/javascript-identifiers

Sie werden in diesem Dokument feststellen, dass _ ein zulässiges Zeichen ist, mit dem ein Bezeichner beginnen kann.

In Ihrem Beispiel hat dies keine Bedeutung, wahrscheinlich hat der Autor einfach gedacht, dass es cooler ist als nur ().

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X