yowa解析

餃子オフの人にとてもいい物を見せてもらったので、知らなかった演算子やら構文やらを勉強してみた。

var ary = ['ke','m','co'];
alert(ary[0]||'kmcoe'); //ke
alert(ary[1]||'kemco'); //m
alert(ary[2]||'kemco'); //co
alert(ary[3]||'kemco'); //kemco

なるほどなー。
こんな方法があったのか。
確かにary[3]なんて存在しないから、偽になるわな。
ふむ。




「いくつかの&&を&にすればいいんじゃね?」と言っちゃったけど、JavaScriptの&って条件演算子として使えないのか。
javaと混同してた。
恥ずかし乙女。
はて、じゃあ、何でこれまでの俺のコードは通ってたんだろう。
まぐれ?



document.writeln('shadow','gate'); //shadowgate
alert('shadow','gate'); //shadow

しかし、穴ゴルで「print('shadow','gate')」なら「shadow gate」と返ってくるのであった。
これはprint()の仕様ってことでいいんかな。
ともあれ、半角ブランクの節約になるのはありがたい。




「a*!!b」。
こいつだけはガチで分からなかった。
「!!」ってなんだ。
「*!!」でセットなのかも?
どちらにしろ分からない。
ぐぐっても期待した結果は返ってこないし。
動かしてみてもなんかいまいち。
はて。