JavaScript Jargon知っておくべき10の用語
から カレー に クロージャ JavaScriptの専門用語(フィールド内で使用される特別な単語)は数多くありますが、どれを使うとボキャブラリーを増やすことができるだけでなく、JavaScriptの理解も深まります。. ジャーゴンは通常、文書および技術記事に記載されています. しかし、それらのいくつかは好きです クロージャ 知っておくべき標準的なものです。その単語自体が何を意味するのかを知っていることは、あなたがそれがより良いという名前の概念を知るのを助けることができます.
この記事は、そのような10の用語をまとめたものです。 それらの意味 そして それらが使用されているコンテキスト JavaScriptで。もしあなたが初心者ならば、このリストはあなたが次のような基本でカバーしているということです。 巻き上げる. 同時に、あまり知られていない、またはあまり理解されていない用語もそこに含まれています。.
- アリティ
- 匿名
- 閉鎖
- カレー
- 巻き上げ
- 突然変異
- プラグマ
- センチネル
- バニラ
- 可変数
アリティ
アリティ (ラテン語から)は、それぞれ関数または操作内の引数またはオペランドの数を指すために使用される用語です。あなたはそれが言及するために使用されているときにJavaScriptの分野でこの単語に遭遇する可能性が最も高いです JavaScript関数に必要な引数の数.
arityという名前のプロパティもあります。 関数
関数内で予想される引数の数を返すオブジェクト。それは今では時代遅れであり、に置き換えられます 長さ
.
次の関数のアリティは3です。.
function getName(first、middle、last)return first + "+ middle +" + last;
匿名
匿名 形容詞です。何かまたは誰かが匿名と呼ばれるとき、それはものや人の名前が未確認であることを意味します。 JavaScriptでも同様に、無名関数は名前で識別されないものです。.
(function()// body)();
上記はIIFE(即時起動関数式)です。その中の関数は名前がないので匿名です。それでは、以下を見てください。.
var foo = function();
キーワードの後に名前がないため、これは匿名関数とも呼ばれます。 関数
.
単語の使用の正確さに少し疑いが生じます “匿名”. IIFEでは、関数はすぐに呼び出され、名前は関係ありませんが、後者の関数を構文と呼びます。 foo()
使用されている.
名前のない関数を 'foo'という名前で洗練し、それを使ってそれを呼び出したようなものです。それは匿名として数えますか?私は知りません、私はそれを英語の専門家に任せます。しかし、私の混乱はさておき、どちらも実際には無名関数と呼ばれています.
3.締め切り
これはオックスフォード辞書からの定義の1つです: 閉鎖: “キャップやネクタイのような何かを閉じるかシールするもの.”
JavaScriptでは、クロージャーは内部関数であり、外部関数のスコープ外でアクセス可能です。外部関数の変数への接続はそのまま残ります。.
物事を説明するために(おそらく正確ではないが単に十分) 閉鎖 レストランでウェイターとして。多くのことがレストランのキッチンで起こります。しかし、そのときどのようにして私たちは食べ物を手に入れるはずですか?
それがウェイターが入ってくるところです。私たちは彼らに電話して食べ物を注文します。そして彼らは台所に行き、注文をシェフに知らせ、そして注文の準備ができたらそれを私たちに持って行きます。このように我々は少しも壊れていません “規則” それでも食事をつかむことができます.
ウェイターは私たちの注文を台所に持っていって食べ物と一緒に戻ることができる人です。 JavaScript クロージャ それに似ている、彼らはすることができます 私たちのパラメータを取る そして 変数を取り戻す (正確にはこれらの変数への参照)私たちが許可されていない関数の中から.
function order()var food;機能ウェイター(注文)シェフ(注文);食べ物を返す。 function chef(order)if(order === 'パスタ')food = ['パスタ'、 '肉汁'、 '調味料'];クック(); function cook()food.push( 'cooked');ウェイターを返す。 var myOrder = order(); console.log(myOrder( 'pasta')); // Array ["パスタ"、 "グレービー"、 "調味料"、 "調理済み"]
上記のコードからわかるように、 ウェイター
そして、order関数の内部からの戻り値は、外部の世界には公開されません。.
カレー
Haskell Curryにちなんで名付けられた効果は、 単一の引数で複数の関数を使用する, 複数の引数を持つ単一の関数の代わりに。見てみましょう 追加する
例えば以下の機能.
関数addx(x)関数addy(y)return x + y; add addy関数add(x、y)return(x + y); console.log(addx(3)(4)); \\ 7 console.log(add(3,4)); \\7
両方の関数は同じ結果を返します。関数 addx
パラメータを受け取る バツ
帰りながら アディ
これは順に受け入れます よ
value、で加算を実行する バツ
そして合計を返します.
関数 追加する
単に両方を取ります バツ
そして よ
同時に、加算を実行して合計を返します。これまでのところ、最初の関数はそれほど有用ではないかもしれませんが…
var add4 = addx(4); console.log(add4(8)); // 12 console.log(add4(6)); // 10 console.log(add4(-74)); // - 70
さて、前者の機能が突然面白くなります。カリー化では、上記のコードから4を追加するなど、一連の操作のステップをいつでも修正できます。これは、操作で使用される変数の1つが常に同じ場合に役立ちます。.
巻き上げ
ホイストは何かを上げることを意味します. 巻き上げ JavaScriptでも同じことを意味し、宣言されているのは宣言(変数と関数の宣言)です。.
宣言は変数と関数がキーワードで作成されるところです var
(グローバルではありません) 関数
.
関数や変数を宣言するためにどこにコードを入力してもかまいません。評価中に、すべての宣言はそれらが存在するスコープ内に移動します(厳密モードを除く)。したがって、関数宣言の前に配置された関数呼び出しのコードを使って作業コードを書くことができます。.
var name = 'Velma'; console.log(sayCatchPhrase(name)); //「変態!」 function sayCatchPhrase(name)phrase = 'フレッドフリントストーン': 'ヤバdabbaドゥー!'、 'ヴェルマ': 'ジンキーズ!'、 'カミソリ': 'ビンゴ!'、 'He-Man': '私は力がある';フレーズを返す[名前]。
6.突然変異
突然変異とは変化または改変を意味する。 JavaScriptで「変異」という単語に出会ったことがあるのであれば、それはおそらくDOM要素が行った変更を指しているのでしょう。.
次のようなDOMの変異に注目しないようにするためのMutationObserverというAPIさえあります。 子要素の追加 または 要素の属性に対する変更. (あなたは私の投稿でMutationObserverについてもっと読むことができます。)
7.プラグマ
プラグマ 実用的な情報の略です。平易な英語では、語用論は賢明で実用的を意味する形容詞です。プログラミング中, プラグマ 上の有用な情報からなるコードを参照します。 コンパイラ、インタプリタ、アセンブラによるプログラムの処理方法.
プログラミング言語自体には何も寄与していません。その構文はさまざまです。これらはコンパイラの動作にのみ影響します。 JavaScriptにもプラグマはほとんどありませんが、そのうちの1つです。 厳しい
.
"厳密を使用する";
上記のプラグマにより、JavaScriptコードはstrictモードで実行されます。厳密モードでは、不適切な構文は許可されません, 巻き上げる されていない、サイレントエラーが表示される、など。 より安全で最適化されたJavaScriptコードを書く.
センチネル
センチネル 警備をしている兵士たちです(X-Menの人たちを覚えていますか?)。プログラミング中, センチネル ループまたはプロセスの終了を示すために使用される値です。彼らはまた呼び出すことができます “旗”.
として適切な値を使用できます。 センチネル. これはの例です センチネル JavaScriptで使用されています。の の指標
検索対象の文字列に検索値が見つからない場合に-1(センチネル値)を返すメソッド。以下は、配列値の位置を返す関数で、値が見つからない場合は-1を返します。.
関数getPos(ary、val)var i = 0、len = ary.length; for(; iバニラ
みんなの最初のアイスクリーム風味はバニラであったに違いないと思います。私はアイスクリームだけでなく、ほとんどすべての甘い料理にバニラの種類になったとも思います の 標準フレーバー私はそれらがミックスにそれの少なくとも一滴を加えるかなりの数のケーキレシピを見ました - ちょうど味を増やすために.
そしてそれは何ですか バニラ です、 伝統的なスタンダードフレーバー. バニラ JavaScriptは標準のJavaScriptと呼ばれ、フレームワークはありません。実際、Vanillaは標準バージョンのJavaScriptだけでなくCSSなどの他の言語を記述するためにも使用されています。.
10.バリアディック
可変数 joinによって作成された形容詞です。 “変数” そして “狂気”. “狂気” ラテン語と同じ意味の古代ギリシャ語からのものです。 “アリティ” (このリストの項目1)したがって、用語 可変数 に慣れている 可変個の引数を持つ何かを表現する.
JavaScriptでは、 可変数 functionは任意の数の引数を取ります。それを使用して作成することができます
引数
財産,適用する
メソッドとES6以降、スプレッド演算子。下記はスプレッド演算子を使用した例です。.機能テスト(…a)console.log(a); test( 'a'、 'b'、 'c'、8、[56、-89]); //出力はArray ["a"、 "b"、 "c"、8、Array [2]]