Home > 2009年01月

2009年01月

JavaScriptのinstanceofをisArrayに使っていいの?

以前JavaScriptで配列かどうか調べるなんて記事をろくに調べずに書いたんですが・・・(手元で実行できるか試しただけだった)

Ajaxian ? isArray: Why is it so bloody hard to get right? のような記事が定期的に話題になるのでふと気になった。
(そういえば、JavaScript: The Good Partsでもこのトピックを扱っていた)

「もしかして、instanceofって非推奨な演算子なのか?」と。

以下調べた結果です。

JavaScriptのinstanceofは遠慮なしに使っていいものか? - 檜山正幸のキマイラ飼育記
同じテーマの記事を発見。

instanceof が使えるのは「JavaScript 1.4 から」らしいですが、
version ≧ 1.4 は普通に仮定していいことなのだろうか?

また、コメント欄(Kuwataさん)より、

現状で JavaScript に対応しているアプリケーションは
大抵 JavaScript 1.5 というか ECMA-262 第三版に対応しているので、 
version ≧ 1.4 だと仮定しても問題ない

とのこと。

JavaScript 第5版には普通に書いてあったし、
たぶん大丈夫そうだけど…もうちょっと調べてみる。

instanceofはJavaScript1.4以降?(Firefox編)

まず、「instanceofが1.4から」のソースを探してみる。

お、あった→Determining Instance Relationships - MDC

で、さらにJavaScript - Wikipedia(2009年1月12日 22:47:33)によるとFirefox1.0でJavaScript1.5らしいので、
Mozilla系は使えると考えてよさそう。

IEのJavaScriptバージョンはよくわからん

お次はIEです。

Version Information (Windows Scripting - JScript)なんていう今日の日のためにあるようなページを発見。(via What's new in IE6
これによるとinstanceof OperatorはJScript5.0でサポートされているとのこと。

さらに、JScript5.0はMicrosoft Internet Explorer 5.0で実装されてるということで、
こちらも問題なしですね!

結論

どうやら使ってもよさそうです。

え?他のブラウザ?
…また今度で^^;

っていうかこれ調べてて気づいたけど、

無名関数を作るときにおなじみのvar f = function()...もJavaScript1.5以降だし、
for...inもJScript5.0以降なんだねぇ。

instanceofが使えないなら今のモダンJavaScript全滅なんじゃ。。。

その他参考

主に1.4か?のソース探しの時に見たサイトです。
なぜかなかなかMDCの該当個所に辿り着けなかった。。。
anything from here jQueryインクルード時の挙動を追跡する ──jQuery解読(4)
JavaScript入門(記述法)

※ 投稿時間を20分ごまかして13日分の記事を稼ぐという姑息な…

追記(2009/01/13 07:05)

あれ?トラックバックが送れてない?
一応再送信しときます。
多重送信になってたらすいませんm(_ _)m

TB送信、RSS送信が多くある場合に起こるエラーとなっております。
これらが一定期間に一定数を超えてしまった場合、
スパムを行っているとプログラム側で判断し、
以降の送信が出来なくなります。
その制限は、最後のエラーログから24時間で解除されます。

これに引っかかったっぽいな。(ヘルプ - NINJA TOOLS
相手がいなかったりでping送信エラーが何件か出ちゃってたせいかな?
それとも去年のTODOリスト整理で連投してたからか?

PR

今さらブログSEO

  • 2009-01-12 (Mon)
  • Web

なかなかホッテントリ入りできないブロガーが読むべき27のコツまとめ

なんて記事を一応読んでみたので。

最近はあんまりはてなのhotentry入りしたいとかは思わなくなってきましたけどね^^;
(忍者ブログといえばBorn Neetという位置を狙って行きたい?)

で、何をやったかというと、以下の2サイトに登録しました。

これらのサイトはTechnorati等と違って、登録しないとpingを送っても意味がないようです。


なんと、BlogPeopleにいたっては1年以上もpingだけ送信していました。。。
(忍者ブログのデフォルトping送信先に入っているため)
というわけでさっさと登録しておきました。
bornneetで検索して0件はさすがに凹む)

とりあえず、反映されるまで様子見です。

ブログ村の方も登録はしたんですが、何と人力で審査しているようです。
ちゃんとしてますねー。驚きです。
なのでこっちは審査結果待ちです。
(ブログ村は登録しないとping送信先がわからないっぽい。
どうやら「http://ping.blogmura.com/xmlrpc/ユーザ毎の文字列」らしいけど)
⇒ 投稿せずに放置してる間に本登録のメール来た。速ぇ、、、自動?
  pingのURL形式は予想通りでした。

以上、新年でブログを始めた人の参考に…ならないな。

navitimeletを修正。

navitimeを検索するというだけのブックマークレットなんですが、
わりと使ってます。

で、なぜか全角スペースで駅名を区切れなくない仕様だったので直しました。

最新版はこちら↓

navitimelet

とりあえずこれで必要十分かな。(僕としては)

画面内の全checkboxをチェックするbookmarklet

引き続き昨年のTODOリストを処理中です…。

ページ内の全てのチェックボックスをチェックするという、ただそれだけのブックマークレットです。
ただ僕には必要だったんです。
(あえて名前はいいませんが某IT系資格申込サイトなんて、もう何回利用規約に同意させるんだと!)

checkall

以上、僕と同じイライラを感じている方はぜひ。

あ、早速無駄に短縮化してみました。
みじかすぎてあんまり効果ないけど。。。

cho45さんのJavaScript短縮方法まとめがすごい!

JS のコードを短かくする Tips - 冬通りに消え行く制服ガールは、夢物語にリアルを求めない。 - subtech

これは参考になるなぁ。

前に僕もブックマークレットを短くする方法 - Born Neetなんて記事を書いたけど、
全然思いつかなかったことばっかりだ…。

次に長いbookmarkletを書くときは使わせてもらおう。

一応僕の記事も入門編?として残しておきます、恥ずかしながら。。。

Home > 2009年01月

Search
Loading
Feeds
Links
スポンサードリンク

Page Top