Heim > Web-Frontend > js-Tutorial > Das js-Parameterobjekt implementiert optionale Parameter und Parameterstandardwerte

Das js-Parameterobjekt implementiert optionale Parameter und Parameterstandardwerte

高洛峰
Freigeben: 2016-11-22 11:24:10
Original
1230 Leute haben es durchsucht

JS-Parameterobjekt implementiert optionale Parameter und Parameter-Standardwerte

Die Voraussetzung für das Weglassen von Parametern ist, dass die Funktion identifizieren kann, welchen Parameter Sie übergeben möchten. Vereinbarung
1 Nach den ausgelassenen Parametern festlegen
2. Das Weglassen von Parametern kann nicht zu Mehrdeutigkeiten mit anderen Funktionen führen (js hat dieses Problem nicht)

Das Programm erfordert, dass Sie Parameter in der Reihenfolge übergeben, in der sie definiert sind. Was später nicht weitergegeben wird, wird weggelassen. Wenn Sie die Mitte weglassen möchten ... Übergeben Sie leider selbst null oder undefiniert.

Bei Javascript kann der Parametertyp durch einfache Beurteilung identifiziert werden, um beispielsweise den Effekt zu erzielen, dass Zwischenparameter weggelassen werden.

    var set = function(name, date, age) {
    if (typeof date === "number") {
        age = date;
        date = undefined;
    }
    // ....
}
Nach dem Login kopieren

Hier wird einfach nach Typ identifiziert. In komplexeren Situationen können Sie reguläre Ausdrücke verwenden, um Domäne, URL, E-Mail usw. zu identifizieren. Dies ist jedoch schwieriger zu sagen und die Codelogik ist komplex und nicht einfach zu schreiben.

Wenn viele Parameter vorhanden sind und einige davon weggelassen werden können, wird die Verwendung von Parameterobjekten empfohlen.

ES5 implementiert ein optionales Parameterobjekt

    var CookieUtil = {
    set: function(args) {
        var name = args.name;
        var value = args.value;
        var expires = args.expires;
        var path = args.path;
        var domain = args.domain;
        var secure = args.secure;

        // ...
    }
}

    CookieUtil.set({
        name: "name",
        value: "Nicholas",
        path: "/books/projs/",
        domain: "www.wrox.com",
        expires: new Date("January 1, 2010")
    });
Nach dem Login kopieren

ES6 implementiert ein optionales Parameterobjekt – Syntax-Zucker-Destrukturierungszuweisung

    function doSome({a,b=2,c}){
    console.log(a,b,c)
    }
    doSome({a:5,c:22})
    // 5 2 22
Nach dem Login kopieren


Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage