とても”奇妙”なJavaScriptの配列:JavaやCとは違うのだよ
白石俊平(あゆた)
2008/02/07 11:00
JavaやCとは全く異なるJavaScriptの配列。これをわかりやすく整理してみた。
前回のまとめと今回のあらすじ
JavaScriptをより深く知りたい人のための当連載、今回が7回目です。
前回はJavaScriptの配列に関して基本的なトピックを網羅してみました。今回はいよいよ、JavaScriptの配列の本質に迫ってみたいと思います。
Java/Cとは全く異なる、JavaScriptの配列
JavaScriptの配列は、JavaやCとは全く違うデータ構造だ。このことは、JavaやCの経験が元々ある人の方が気づきにくいかもしれません(僕がそうでした)。
では、JavaScriptの配列とは何なのか?
いきなり答えを言ってしまいましょう。JavaScriptの配列とは、以下のような特徴を持つデータ構造です。
- Cのように、値を複数格納できる「連続したメモリ領域」とはまったく違う。配列はJavaScriptオブジェクトであり、つまりハッシュテーブルである。
- 配列の添え字はハッシュのキーである。JavaScriptオブジェクトのキーには数値も使える事を押さえておこう(連載第3回参照)。
- 極めて特殊なlengthプロパティを持つ。lengthプロパティは「インデックス最大値 + 1」を表すプロパティ。
- lengthプロパティは読み取りだけでなく書き込みも可能。書き込むと、その大きさまで配列が切り詰められる
さらにわかりやすいように、配列を一言で説明すると、「非常に変わった性質を持つlengthプロパティを持つが、それ以外は通常のJavaScriptオブジェクトである」と言えます。
では、次のページでこれらを検証してみましょう。読者の皆さんもぜひ試してみてください。
- 特集: JavaScriptのイロハ (19件)
- ホワイトペーパー
- 話題のタグ
アプリケーション
CSS
Chrome
Webサービス
iPod touch
Apple
Webデザイン
Mozilla
Linux
Windows 7
Database
データベース
Flash
Windows Vista
Mac OS X
iPhone
Java
リファレンス
Opera
ソフトウェア開発
OS
Windows
Firefox 3
Off Topic
WebKit
Tips
UI
仮想化
マイクロソフト
プログラミング言語
iPhone 3G
RIA
Windows XP
インストール
Firefox
Safari
脆弱性
PHP
セキュリティ
Microsoft
ブラウザ
HTML
小技
JavaScript
Internet Explorer
開発環境
オープンソース
Google
Ajax
モバイル
話題のタグを見る »
グーグル、JavaScriptプログラミングツールをリリース
Windowsの歴史 Windows Server 2008編:同じカーネルを持つ「Vista」とは対照的に早くから支持を得たサーバOS
Windowsの歴史 Windows Server 2003 R2編:安定性と先進性の両立目指す「R2」の先駆けとなったOS
モジラ、「Firefox 3.6」の第1ベータ版をリリース
進むストレージ環境の見直し
100万円で実現!中小企業の情報漏えい対策
大丈夫?あなたの会社のセキュリティ対策
企業ITシステムの企画、構築、運用のイロハ
最大32個のセンサーが電力を徹底管理!
―エン・ジャパン厳選求人☆毎週更新―
【最終警告】パンデミック対策特集