Heim >Web-Frontend >js-Tutorial >Einführung in Standardparameter in ES6 (Codebeispiel)

Einführung in Standardparameter in ES6 (Codebeispiel)

不言
不言nach vorne
2018-11-14 15:34:261735Durchsuche

Dieser Artikel bietet Ihnen eine Einführung in die Standardparameter in ES6 (Codebeispiele). Ich hoffe, dass er für Freunde hilfreich ist.

Syntax

function [name]([param1[ = defaultValue1 ][, ..., paramN[ = defaultValueN ]]]) { 
    statements 
}

Verwenden Sie

function sum(a=0, b=0){
    return a+b
}
sum() // 0
sum(1) // 1
sum(1, 2) // 3

Verwenden Sie babel zum Übersetzen

function sum() {
    var a = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
    var b = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
    return a + b;
}

Werterkennung

Das Ergebnis der Übersetzung aus Babel kann Es ist ersichtlich, dass die Standardparameter nur zwei Situationen überprüfen

  • Es werden keine Parameter übergeben

  • Undefiniert übergeben

function sum(a=0){
    return typeof a
}
sum() // 'number'
sum(undefined)// 'number'
sum(1) // 'number'
sum('1') // 'string'
sum(null) // 'object'
sum(false)// 'boolean'

Vorher- und Nachherparameter verwenden

Der vorherige Parameter kann als Standardwert des nachfolgenden Parameters verwendet werden, und Sie können sogar einige spezielle Operationen am vorherigen Parameter ausführen, z. B. einfache Additionen , Subtraktion, Multiplikation und Division

function sum(a=1, b=a, c=a+b){
    return [a, b, c]
}
sum() // [1, 2, 3]
sum(2)  // [2, 2, 4]
sum(2,2) // [2, 2, 4]
sum(2,2,2) // [2, 2, 2]

Standardparameter-Aufruffunktion

Das Zuweisen von Standardparametern kann sogar die Funktion aufrufen, zeigt bereits, dass sie allmächtig ist~

function sum(a=1, b=(()=>4)()){
    return [a, b]
}
sum() // [1, 4]
sum(2) // [2, 4]
sum(2,2) // [2, 2]

Hinweis: Funktionen können nicht als Standardwerte aufgerufen werden

function sum(a=1, b=num2()){
    function num2(){
        return 4
    }
    return [a, b]
}
sum() // Uncaught ReferenceError: num2 is not defined

in der Reihenfolge überschreiben

Parameter werden nacheinander in der beim Aufruf übermittelten Reihenfolge überschrieben. und die Zuweisung des formalen Parameters wird nicht übersprungen, nur weil er einen Standardwert hat

function sum(a=1, b ){
    return [a, b]        
}
sum() // [1, undefined]
sum(2)// [2, undefined]
sum(1,2) //[1, 2]

Destrukturierung von Zuweisungs-Standardparametern

Standardparameter können auch in Strukturen verwendet werden, obwohl Strukturen in nicht vorkommen Diese Serie noch

function sum([x, y] = [1, 2], {z: z} = {z: 3}) { 
  return [x, y, z]; 
}
sum() // [1, 2, 3]
sum([2,4],{z: 6}) // [2, 4, 6]

Das obige ist der detaillierte Inhalt vonEinführung in Standardparameter in ES6 (Codebeispiel). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:segmentfault.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen