Dalam ES6, fungsi anak panah ialah sintaks baharu yang menggunakan "=>" untuk mentakrifkan fungsi ini dalam badan fungsi fungsi anak panah sentiasa menunjuk ke objek di mana ia ditakrifkan; tidak menunjuk untuk memanggil objek, dan ini tidak boleh diubah, sintaksnya ialah "let fun=(parameter) => {function body};".
Persekitaran pengendalian tutorial ini: sistem Windows 10, ECMAScript versi 6.0, komputer Dell G3.
Dalam ES6, fungsi anak panah ialah salah satu ciri baharu yang paling menarik. Seperti namanya, fungsi anak panah ialah sintaks baharu yang menggunakan anak panah (=>) untuk mentakrifkan fungsi, tetapi ia berbeza sedikit daripada fungsi JavaScript tradisional, terutamanya memfokuskan pada aspek berikut:
Tiada Ini, super, argumen dan new.target terikat dan nilainya ditentukan oleh fungsi bukan anak panah terdekat di pinggir
tidak boleh dipanggil melalui baharu kata kunci
Tiada prototaip
Tidak boleh menukar pengikatan ini
Tidak menyokong objek hujah
Tidak menyokong parameter dinamakan berulang
Titik ini dalam badan fungsi sentiasa menghala ke objek di mana ia ditakrifkan, bukan kepada objek yang memanggilnya. Kita tahu bahawa berfungsi dalam es5 Sesiapa yang melaksanakannya, kepada siapa ia diarahkan.
adalah seperti berikut:
var f = v = > v; //等同于 var f = function(v){ return v; } var sum = (num1,num2) => num1+num2 ; //等同于 var sum = function(num1,num2){ return num1+num2 } [1,2,3].map(function (x) { return x * x; }); // 箭头函数写法 [1,2,3].map(x => x * x);//简洁了许多
Daripada contoh kita dapat melihat bahawa fungsi ditinggalkan dan pendakap kerinting '{}' digantikan dengan '=> '. Cara penulisan ini lebih ringkas.
Contohnya adalah seperti berikut;
//1、参数默认值 位置在所有形参的后面 //es6之前的采取的默认值只能变相采取 function test(a,b) { a=a||2; b=b||2; return a*b } console.log(test()); //但是这个有弊端 当我们传递的值为0的时候,还是会走默认值。改造之后 function test1(a,b) { a=typeof a==="undefined"?2:a; b=typeof b==="undefined"?2:b; return a*b } console.log(test1(0,0)) // es6为我们提供了默认值 // 语法糖: function(a,b=2){} let test2=(a=2,b=2) =>{ return a*b }; console.log(test2());
Hasil keluaran:
[Cadangan berkaitan: tutorial video javascript, bahagian hadapan web】
Atas ialah kandungan terperinci Apakah maksud fungsi anak panah es6?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!