Dalam es6, "=>" merujuk kepada fungsi anak panah, yang merupakan singkatan untuk fungsi Sintaks ialah (parameter)=>{function body};. Fungsi anak panah tidak mempunyai prototaip. tidak ini, argumen, super dan "new.target" terikat, dan nilainya ditentukan oleh fungsi bukan anak panah yang terdekat di pinggir; ia tidak boleh dipanggil melalui kata kunci baharu Persekitaran operasi tutorial ini 7, ECMAScript versi 6, komputer Dell G3
ialah fungsi anak panah, yang merupakan fungsi baharu yang ditambahkan dalam standard ES6, fungsi anak panah adalah penggunaan. =>) mentakrifkan sintaks baharu untuk fungsi Sintaks ungkapan fungsi anak panah adalah lebih ringkas daripada ungkapan fungsi, tetapi ia berbeza sedikit daripada fungsi JavaScript tradisional, terutamanya memfokuskan pada aspek berikut:
Tiada pengikatan ini, super, argumen dan new.target, dan nilainya ditentukan oleh fungsi bukan anak panah terdekat di pinggir
=>
Tidak digunakan dengan baru
(param1, param2, …, paramN) => { statements } (param1, param2, …, paramN) => expression //相当于:(param1, param2, …, paramN) =>{ return expression; } // 当只有一个参数时,圆括号是可选的: (singleParam) => { statements } singleParam => {statements } // 没有参数的函数应该写成一对圆括号: () => { statements }
Fungsi anak panah tidak boleh digunakan sebagai pembina, dan ralat akan dilemparkan apabila digunakan dengan yang baru tiada atribut prototaip.
Fungsi anak panah tidak mempunyai atribut prototaip. atau "badan blok" biasax => x * x
Dalam isi ringkas, hanya ungkapan diperlukan dan nilai pulangan tersirat mesti digunakan dalam isi blok
function (x) { return x * x; }
rekursi fungsi anak panah
< mesti digunakan 🎜>var elements = [ 'Hydrogen', 'Helium', 'Lithium', 'Beryllium' ]; elements.map(function(element) { return element.length; }); // 返回数组:[8, 6, 7, 9] // 上面的普通函数可以改写成如下的箭头函数 elements.map((element) => { return element.length; }); // [8, 6, 7, 9] // 当箭头函数只有一个参数时,可以省略参数的圆括号 elements.map(element => { return element.length; }); // [8, 6, 7, 9] // 当箭头函数的函数体只有一个 `return` 语句时,可以省略 `return` 关键字和方法体的花括号 elements.map(element => element.length); // [8, 6, 7, 9] // 在这个例子中,因为我们只需要 `length` 属性,所以可以使用参数解构 // 需要注意的是字符串 `"length"` 是我们想要获得的属性的名称,而 `lengthFooBArX` 则只是个变量名, // 可以替换成任意合法的变量名 elements.map(({ "length": lengthFooBArX }) => lengthFooBArX); // [8, 6, 7, 9]
keserasian penyemak imbas
var simple = a => a > 15 ? 15 : a; simple(16); // 15 simple(10); // 10 let max = (a, b) => a > b ? a : b;
, bahagian hadapan web】
Atas ialah kandungan terperinci es6 => apa maksudnya. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!