メソッドを自作してみよう!!
メソッドを自作してみよう!!:
こんにちは。
今回は、、、JSのメソッドを自作方法ですね。失敗例も交えて書きました。
(カッコよさそうだからやってみたんですがね)
これだけです。
つまり、JSON的な書き方ですね。
こんな感じに作ってみました。
日付を返すのは見てのとおりなので、割愛して、、、
呼び出し方ですね。これだと、
「
このように呼び出します。
もし、引数があるならば、
「
のように、括弧の中に引数を代入するだけです。
広く使われるもので説明してみます。
みんな大好き
よくHTML用のJSに使われますね。
たとえば、
コンソールで見てみると、
上から7番目。Arrayが宣言されてますね。
いろいろとメソッドが多用される事例の一つですね。
これは本当にJSONとして扱われてしまい、
これも文字列として扱われます。
これは、、、読まれた瞬間に実行されてしまい、文字列として扱われるどうこうの問題どころではなくなりますね。
まさかの、キー名も文字列型にしないんですねぇ。。。
でも、最初に説明したものとは違いますよね。それについて以下で説明します。
前項で言ったとおり、通常は
と記述しますが、略して記述できます。
それが、冒頭で説明した
ってものです。
わざわざ複数行にする必要もありません。だから、こんな風にも、
最短で
これが、簡略構文と呼ばれるものです。
ちなみに、
JSONといえばJSON?なので、こんな書き方もできます。
メソッドはJSONの形で宣言して、
おわり。
こんにちは。
今回は、、、JSのメソッドを自作方法ですね。失敗例も交えて書きました。
(カッコよさそうだからやってみたんですがね)
メソッドのつくりかた
var def={
hoge(){
return false;
}
}
つまり、JSON的な書き方ですね。
メソッドを利用してみよう
こんな感じに作ってみました。var def={
time(){
return [new Date().getFullYear(),new Date().getMonth()+1];
}
}
呼び出し方ですね。これだと、
「
def.time()」このように呼び出します。
もし、引数があるならば、
「
def.hoge("fuga")」のように、括弧の中に引数を代入するだけです。
実際に使われるメソッド
広く使われるもので説明してみます。windowメソッド~~。よくHTML用のJSに使われますね。
たとえば、
Array()も、windowメソッドの一つで、コンソールで見てみると、
上から7番目。Arrayが宣言されてますね。
いろいろとメソッドが多用される事例の一つですね。
失敗例
JSON形式で書いてしまう
失敗例1
hoge={
"piyo":function(){
return false;
}
}
function(){return false;}という文字列として扱われます。(当然としては当然)
JSON形式で書いてしまう2
失敗例2
hoge={
"piyo":function piyo(){
return false;
}
}
JSON形式で書いてしまう3
失敗例3
hoge={
"piyo":(function(){
return false;
})()
}
そして成功
hoge={
piyo:function(){
return false;
}
}
でも、最初に説明したものとは違いますよね。それについて以下で説明します。
簡略構文
前項で言ったとおり、通常はhoge={
piyo:function(){
return false;
}
}
それが、冒頭で説明した
var def={
hoge(){
return false;
}
}
わざわざ複数行にする必要もありません。だから、こんな風にも、
var def={
hoge(){return false;}
}
var def={hoge(){return false;}}と、書けます。これが、簡略構文と呼ばれるものです。
ちなみに、
functionは必要ありません。書くとエラー吐かれます。
技
JSONといえばJSON?なので、こんな書き方もできます。var def={
hoge(){return false;},
"piyo":"Hello",
"fuga":"World"
}
まとめ
メソッドはJSONの形で宣言して、関数名(引数){処理}で書け!おわり。
コメント
コメントを投稿