Home > 技術 > NodeList[0]とNodeList.item(0)では戻り値が違う

NodeList[0]とNodeList.item(0)では戻り値が違う

getElementsByTagNameとかで取得したNodeListから参照したいエレメントを削除して、それから中身を見ようとした場合elems.item(0)とelems[0]では戻り値が違う。
まぁ当たり前といっちゃ当たり前かもしれない。

item(0)は関数で指定したノードがない場合にnullを返す、[0]は直接NodeListを見に行ってそこに定義がないからundefinedかな。

とはいっても、

これはちゃんと通るから、大丈夫かな。

このほうが無難かも。

一応DOMの規定では配列のようにアクセスしても、item関数経由でアクセスしてもいいみたいです。

NodeListをforinするとわ~お

ちなみにNodeListをforinとかで回すとえらいことになる可能性があるので、注意が必要です。

これだと欲しいエレメントのpタグ以外に

  • length
  • item()
  • namedItem()

が取れちゃうから。
なので、普通にfor文で回したほうがよいですね。

高速化するなら

NodeListやHTMLCollectionに直接アクセスするより、一旦静的な配列にしたほうが速い - 素人がプログラミングを勉強するブログ

一旦配列に突っ込んだほうが速いようです。
意外や意外!

Comments:0

Comment Form

コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。

Remember personal info

Trackback:0

TrackBack URL for this entry
http://hisasann.com/cgi-bin/mt/mt-tb.cgi/1136
Listed below are links to weblogs that reference
NodeList[0]とNodeList.item(0)では戻り値が違う from HouseTect, JavaScript Blog

Home > 技術 > NodeList[0]とNodeList.item(0)では戻り値が違う

このブログについて
author:hisasann.com

description:就職しました!
最近はJavaScript、Perl、Rails、Java(Struts+Spring+iBatis)なんかをいろいろといじっています。
今猛勉強中なのがActionScriptです。
アニメーション楽しい!



他に運営しているブログ:

利用しているWebサービス :


Tag cloud
カテゴリー
月別アーカイブ
jQuery Meetup

Visit jQuery Meetups
Powered by
Powered by
Movable Type Commercial 4.261

Page Top