「JavaScript/Function」の版間の差分
削除された内容 追加された内容
M {{Nav}} |
→Functionオブジェクト: cleanup |
||
5 行
=== プロパティ ===
<!--
==== constructor ====▼
a = [], obj = function(){}
==== length ====▼
for (const p in Object.getOwnPropertyDescriptors(Function))
a.push(`==== Function.${p} ====`)
console.log(a.sort().join("\n"))
▲==== Function.length ====
==== Function.name ====
==== Function.prototype ====
-->
==== Function.length ====
この関数が取る引数の数を返す。
<source lang="javascript">
39 ⟶ 48行目:
</source>
==== Function.name ====
この関数の名前を返す。
<source lang="javascript">
46 ⟶ 55行目:
</source>
====
=== インスタンスメソッド ===
==== toString() ====▼
<!--
関数の処理内容を文字列で返す。▼
a = []
for (const p in Object.getOwnPropertyDescriptors(Function.prototype))
a.push(`==== Function.prototype.${p} ====`)
console.log(a.sort().join("\n"))
-->
==== Function.prototype.apply ====
callメソッドと同じく、メソッドを実行できる。▼
callメソッドとの違いは、引数に配列を与えると、これを展開して実行することである。▼
例えば、次の様に配列を自動で展開して実行可能である。▼
<source lang="javascript">▼
Math.max.apply( null, [1,5,8,9,2,10,30,5] ); ▼
</source>▼
スプレッド構文を使うとこのようにも書ける。▼
<source lang="javascript">▼
Math.max(...[1,5,8,9,2,10,30,5]); ▼
</source>▼
==== Function.prototype.arguments ====
▲==== call(thisArg [ , arg1 [ , arg2, … ] ] ) ====
==== Function.prototype.bind ====
==== Function.prototype.call(thisArg [ , arg1 [ , arg2, … ] ] ) ====
callはその関数を実行する。
また、関数に引数を与えたい場合には、callメソッドの第2引数以降に指定をする。
73 ⟶ 104行目:
</source>
====
▲==== Function.prototype.constructor ====
==== Function.prototype.length ====
▲callメソッドと同じく、メソッドを実行できる。
==== Function.prototype.name ====
▲callメソッドとの違いは、引数に配列を与えると、これを展開して実行することである。
▲関数の処理内容を文字列で返す。
----
▲例えば、次の様に配列を自動で展開して実行可能である。
▲<source lang="javascript">
▲Math.max.apply( null, [1,5,8,9,2,10,30,5] );
▲</source>
▲スプレッド構文を使うとこのようにも書ける。
▲<source lang="javascript">
▲Math.max(...[1,5,8,9,2,10,30,5]);
▲</source>
[[Category:JavaScript]]
|