JavaScriptの「関数」は「オブジェクト」
JavaScriptでは関数もオブジェクトなんです。
はて...
どういうこっちゃ。。
関数と言えば下記ですよね。
function func() {
console.log('ABC');
}
func(); // ABC
コードでみると、
function func() {
console.log('ABC');
}
func.value = 1;
func.show = function() {
console.log(this.value);
};
func(); // ABC
func.show(); // 1
といった具合です。
関数もオブジェクトなので、
オブジェクト同様プロパティを持ててしまいます。
関数は実行可能なオブジェクト、
使い方によったら便利です。
外部アカウント
技術情報のみつぶやくアカウント作成しました。JavaScriptは最新情報も追っていきます。
[Twitterはこちら]
(https://twitter.com/takeharumikami)
[Feedlyのフォローはこちら]
(http://cloud.feedly.com/#subscription%2Ffeed%2Fhttp%3A%2F%2Fqiita.com%2Ftakeharu%2Ffeed)
おすすめの記事
入門者がつまづく、thisの挙動を4種類に分けて簡単に学ぶならこれ。Apply, callの挙動までわかる。
JavaScriptの「this」は「4種類」?」
JavaScriptはオブジェクト指向?プロトタイプベースのオブジェクト指向を学ぶなら。
JavaScriptのプロトタイプからオブジェクト指向を学ぶ
JavaScriptでは関数はすべてクロージャ。
そもそもクロージャって?JavaScriptでクロージャ入門