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_6e0401f84de9769ef59464160f3c5c5873031536
ABOUT ME
tak (Takahito Sezutsu)
コメント、トラックバックはお気軽に!
COMMENTS
-
Beanstalk - WEBで管理可能なフリーのSubversionサーバー
→LILAC (08.14) -
CSS Nite in Ginza Vol.29に行ってきました。
→Betsy (05.14) -
「オリジナルの項目が見つからなかったので、エイリアス“********”は開けません。」と出て、Finderで外付けHDDが開けない時は
→poo (04.19) -
MacのSkypeでログイン時プルダウンメニューに表示されるSkype名を消す方法
→tak (06.22) -
「オリジナルの項目が見つからなかったので、エイリアス“********”は開けません。」と出て、Finderで外付けHDDが開けない時は
→tak (06.22) -
「オリジナルの項目が見つからなかったので、エイリアス“********”は開けません。」と出て、Finderで外付けHDDが開けない時は
→ko (06.22) -
MacのSkypeでログイン時プルダウンメニューに表示されるSkype名を消す方法
→Mac (05.06) -
MacのSkypeでログイン時プルダウンメニューに表示されるSkype名を消す方法
→tak (03.11) -
MacのSkypeでログイン時プルダウンメニューに表示されるSkype名を消す方法
→tama (03.11) -
Mac版ATOK定額制(体験版)を1週間使ってみた
→tak (09.19)
COMMENTS