ES6の基礎
そして、のconstをしましょう
問題はローカルスコープずに存在している機能の範囲は、以前のjsにあります。
constこの問題の外観を変更し、しましょう。constの定数が定義されています。
この時点
それだけでなく、このメソッドを呼び出すために彼の決定に別のポイントであると言うかもしれない関数呼び出しに、このオブジェクトのポイントをデフォルトと述べました。
例えば:
'use strict';
const person = {
name: '',
walk() {
console.log(this);
}
}
const walk = person.walk; // 绑定this
walk();
ここで返されますundefined
、あなたがstrictモードを使用しない場合は、(strictモードで)、これはウィンドウオブジェクトを指すことになる、ノードはグローバルオブジェクトです。strictモードでは、ウィンドウオブジェクトにこの点を許可していません。
無名関数のために、彼はこの点を変更しません。
解体の配列とオブジェクト
使用...
デストラクタ配列やオブジェクトを操作します。
const arr = [1, 2, 3]
const ob = {name: 'ob'}
const [a, b, c] = [...arr] // 数组析构
const {name} = {...ob} // 对象析构
あなたがプロパティオブジェクトの名前を変更ではなく、元の名前を使用したい場合は、そうすることができます{name: newName = {...ob}
。あなたはそれに対応するプロパティをしたくない場合は、オブジェクトのデストラクタキーコピーによると、あなたはこのキー名を無視することができます。
営業構造は、そのようなあなたは、いくつかの一般的に使用される方法の連結の配列を接続したいときなど、多くの場合に有用ですが、デストラクタを使用した場合、連結方法を想像していない新しい値を挿入することができます。
ディープコピーの独自のメソッドを記述する必要はありませんときのような深いコピーがあるはずです。
拡張演算子
例えば、このサブ機能のような機能
function test(...args) {
//
}
function test1(a1, ...args) {
//
}
テスト機能のために、渡されたすべてのパラメータ(限定数)は、配列引数に格納されています。TEST1機能のために、最初の着信のパラメータに加えて、配列引数にロードされます。
機能
Array.filter
この関数は関数のこの配列に渡される各々は、コールバック関数を受け取ります。コールバック関数がtrueを返した場合は、この時点での値は、新しい配列にロードされる渡されたコールバック関数です。すべての項目の配列トラバーサルが完了したら、新しい配列が返されます。
Array.map
アプリケーションのそれぞれに対してコールバック関数に渡された配列、新しい配列と戻りを通じてアイテムをロードした後プロセスをマッピング。