Maison > interface Web > js tutoriel > le corps du texte

Introduction aux paramètres par défaut dans ES6 (exemple de code)

不言
Libérer: 2018-11-14 15:34:26
avant
1723 Les gens l'ont consulté

Cet article vous présente une introduction aux paramètres par défaut dans ES6 (exemples de code). Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer. J'espère qu'il vous sera utile.

Syntaxe

function [name]([param1[ = defaultValue1 ][, ..., paramN[ = defaultValueN ]]]) { 
    statements 
}
Copier après la connexion

Utilisez

function sum(a=0, b=0){
    return a+b
}
sum() // 0
sum(1) // 1
sum(1, 2) // 3
Copier après la connexion

Utilisez babel pour traduire

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;
}
Copier après la connexion

Détection de valeur

Comme Comme le montre les résultats de la traduction Babel, les paramètres par défaut ne vérifient que deux situations

  • Aucun paramètre n'est transmis

  • Passer en non défini

function sum(a=0){
    return typeof a
}
sum() // 'number'
sum(undefined)// 'number'
sum(1) // 'number'
sum('1') // 'string'
sum(null) // 'object'
sum(false)// 'boolean'
Copier après la connexion

Utiliser avant et après

Le paramètre front peut être utilisé comme valeur par défaut du paramètre suivant, et vous pouvez même effectuer des opérations spéciales sur le paramètre précédent , comme l'addition, la soustraction, la multiplication et la division simples.

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]
Copier après la connexion

Appeler des fonctions avec des paramètres par défaut

L'attribution de paramètres par défaut peut même appeler des fonctions. Être capable d'appeler des fonctions montre déjà que tout est. possible~

function sum(a=1, b=(()=>4)()){
    return [a, b]
}
sum() // [1, 4]
sum(2) // [2, 4]
sum(2,2) // [2, 2]
Copier après la connexion

Remarque : La fonction déclarée à l'intérieur de la fonction ne peut pas être appelée comme valeur par défaut

function sum(a=1, b=num2()){
    function num2(){
        return 4
    }
    return [a, b]
}
sum() // Uncaught ReferenceError: num2 is not defined
Copier après la connexion

Remplacement dans l'ordre

Les paramètres sont toujours écrasés un par un dans l'ordre dans lequel ils sont transmis lors de l'appel, non Parce qu'il a une valeur par défaut, ignorez l'affectation du paramètre formel

function sum(a=1, b ){
    return [a, b]        
}
sum() // [1, undefined]
sum(2)// [2, undefined]
sum(1,2) //[1, 2]
Copier après la connexion

Déstructuration du paramètre par défaut d'affectation

Les paramètres par défaut peuvent également être utilisés dans la structure, bien que la structure ne soit pas encore apparue dans cette série

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]
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:segmentfault.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal