Maison >interface Web >Questions et réponses frontales >Qu'est-ce que la fonction flèche

Qu'est-ce que la fonction flèche

醉折花枝作酒筹
醉折花枝作酒筹avant
2021-04-13 11:32:382448parcourir

Cet article vous présentera la fonction flèche d'es6. 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 sera utile à tout le monde.

Qu'est-ce que la fonction flèche

Fonctions fléchées

ES6 ajoute la possibilité de définir des expressions de fonctions de syntaxe à l'aide de la syntaxe des flèches. Dans une large mesure, les objets fonction instanciés par des fonctions fléchées se comportent de la même manière que les objets fonction créés par des expressions de fonction formelles. Chaque fois que vous utilisez une expression de fonction, vous pouvez utiliser une fonction fléchée

    let fn = (a, b) => {
        return a + b    }

    let fun = function (a, b) {
        return a + b    }

    console.log(fn(1, 2))   // 3
    console.log(fun(1, 2))  // 3

Les fonctions fléchées conviennent aux fonctions intégrées

    let arr = [1, 2, 3, 4];
    console.log(
        arr.map(function (item) {
            return item + 1
        })
    )   // [2,3,4,5]

    console.log(
        arr.map((item) => {
            return item + 1
        })
    )   // [2,3,4,5]

Fonctions fléchées S'il n'y a qu'un seul paramètre, vous pouvez omettre les parenthèses

    let a = (i) => {
        console.log(i)
    }
    // 当前箭头函数只有一个参数,所以可以省略括号变成以下写法,
    let a = i => {
        console.log(i)
    }

Si la fonction flèche a plusieurs paramètres, séparez-les par des virgules

    // 如果有多个参数,中间用逗号隔开
    let a = (i, j, k) => {
        console.log(i, j, k)
    }

S'il n'y a pas de paramètres, les parenthèses doivent être ajoutées

    // 如果没有参数,则圆括号必须加
    let a = () => {
        console.log("箭头函数没有参数")
    }

La fonction flèche peut également omettre le bouclé accolades, mais cela changera Le comportement de la fonction est le même que celui d'une fonction normale utilisant des accolades. Plusieurs instructions peuvent être écrites dans le corps de la fonction. S'il n'y a pas d'accolades, cela signifie qu'il n'y a qu'une seule instruction après. la flèche, et la valeur de cette instruction est implicitement renvoyée

    let a = () => {
        console.log("我是带花括号的箭头函数")
        console.log("我是带花括号的箭头函数")
        console.log("我是带花括号的箭头函数")
    }

    let a = () => console.log("我是不带花括号的箭头函数")

    let b = i => i + 1
    console.log(b(1))   // 这个时候箭头函数隐式的返回了i+1的值,所以打印结果为2

Bien que la syntaxe des fonctions fléchées soit simple, il existe encore de nombreux scénarios dans lesquels elles ne conviennent pas. Les fonctions fléchées ne peuvent pas utiliser d'arguments, super et cible. , et elles ne peuvent pas non plus être utilisées comme constructeurs. Les fonctions fléchées n'ont pas d'attributs de prototype.

Apprentissage recommandé : Tutoriel vidéo Javascript

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!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer