JavaScriptの連想配列キーに「default」を使うとSafariで動かない
まさかIEのJavaScriptパーサー以外でトラブる日が来ようとは。
JavaScriptで下記のような連想配列を書いていたのですが、
var hoge = {
default: 'ruby',
second: 'JavaScript',
change: function(key) {
hoge[key]
}
}
あのIE6ですらまともに動くのに、何故かSafariでエラー。
Safari4のエラーコンソールで見てみると、どうやら「default: 'ruby', 」の行でエラーになっている模様。
念のため、「JavaScript default」で検索してみると、switch文の中で使うキーワードとして登録されていました。普段Rubyだとswitchもdefaultも使わないから、すっかり忘れてた。
(Rubyだと、「case .. when .. else .. end」)
自戒を込めて、JavaScriptのキーワードと予約語一覧へのリンクを貼っておきますorz
selfとthisもよく間違えるんだよなぁ……。
JavaScriptの仕様的には、Safariとそれ以外のブラウザ、どっちの挙動の方が正しいんだろう。教えてエロい人!
JavaScript, Safari |
comments(0) |
trackbacks(0)
2009.06.21 Sun 20:55
TRACKBACKS
この記事へのトラックバックURL: http://www.red-mount.com/trackback/49_ff223b359a6e8353340b57f3b12ec88f7f423c8d
ABOUT ME
tak (Takahito Sezutsu)
コメント、トラックバックはお気軽に!
COMMENTS
-
Versions - Macで使えるGUIベースのSubversionクライアント
→TANIARollins23 (07.23) -
Rails勉強会@東京第38回 行ってきました
→TamikaTurner (07.04) -
MacのSkypeでログイン時プルダウンメニューに表示されるSkype名を消す方法
→tak (06.22) -
「オリジナルの項目が見つからなかったので、エイリアス“********”は開けません。」と出て、Finderで外付けHDDが開けない時は
→tak (06.22) -
「オリジナルの項目が見つからなかったので、エイリアス“********”は開けません。」と出て、Finderで外付けHDDが開けない時は
→ko (06.22) -
MacのSkypeでログイン時プルダウンメニューに表示されるSkype名を消す方法
→Mac (05.06) -
クックパッドの裏側を見てきました
→Taylor30CLEVELAND (03.23) -
MacのSkypeでログイン時プルダウンメニューに表示されるSkype名を消す方法
→tak (03.11) -
MacのSkypeでログイン時プルダウンメニューに表示されるSkype名を消す方法
→tama (03.11) -
Mac版ATOK定額制(体験版)を1週間使ってみた
→tak (09.19)
COMMENTS