JavaScriptでは多くの言語同様に配列を利用することができます。C言語等では配列には個数を指定したり、代入できるデータ等に制限がありますが、JavaScriptの場合には何の制限もありません。個数も特に指定しなくても動的に割り当てられます。また、どんな型のデータでも代入することができます。実際にはデータだけでなくオブジェクトでも関数でも、ほぼ制限なく代入することができます。 こんなに自由なのは単なる配列ではなく配列オブジェクトだからです。つまり単なる入れ物ではないということです。特にJavaScriptでは配列の機能を追加したり変更することができるため、かなり強力なものになります。もちろん連想配列も扱うことができます。連想配列はハッシュとも呼ばれます。今では連想配列よりもハッシュの方が一般的な名称でしょう。 ここでは配列の生成について説明していきます。JavaScriptで配列を生成
前回黙って配列を使ってしまいましたが、 配列は次のように生成します。 var a = new Array(array-length); このように配列は配列の長さを引数とする Array 型のオブジェクトとして生成します。 配列の要素へのアクセス方法はCと同じです。 a[expression] 添字は 0 〜 array-length - 1 です。 var name = new Array(5); //名前 var score = new Array(5); //点数 name[0] = "さくら"; score[0] = 88; name[1] = "知世"; score[1] = 90; name[2] = "千春"; score[2] = 92; name[3] = "奈緒子"; score[3] = 91; name[4] = "利佳"; score[4] = 93; //次
私は C/C++ あるいはアセンブラといった低級言語を主に使う職業プログラマですが, もちろん仕事や趣味で他の言語を使うこともあります。 特に「スクリプト言語」と呼ばれる高級言語は手軽に使えるため重宝しますが, メインで使っているわけではないので, しばらく使わないと忘れてしまいます。 JavaScript も同様で使わないとすぐに忘れます。 そこでこれから何回かに分けて自分自身への覚え書きを兼ねて JavaScript について書いてみます。 といっても JavaScript の言語マニュアルを書いてもしょうがないので, C/C++ プログラマから見て JavaScript を取り扱う際に注意すべき点などを主に書いていきたいと思います。 あらかじめ予防線を張っておきますが, 私は言語系のプログラマではないですし特にスクリプト言語に関してはど素人同然です。 もし JavaScript に関
JavaScript における new 演算子の動作は大まかにいって以下のとおりである。(new F() とした場合。) 新しいオブジェクトを作る。 1 で作ったオブジェクトの [[Prototype]] 内部プロパティ (__proto__ プロパティ) に F.prototype の値を設定する。 F.prototype の値がオブジェクトでないのなら代わりに Object.prototype の値を設定する。 F を呼び出す。このとき this の値は 1 で作ったオブジェクトとし、引数には new 演算子とともに使われた引数をそのまま用いる。 3 の返り値がオブジェクトならそれを返す。そうでなければ 1 で作ったオブジェクトを返す。 ここで「オブジェクトである」というのはプリミティブ値 (文字列、数値、真偽値、undefined 、null) ではないということだ。new Stri
Javascriptのイベントハンドラ設定方法 2007年5月7日 DOMやJavascriptを勉強しているとイベントハンドラの設定方法が色々とあってどの方法でやれば一番良いのかわからなくなってきたので、自分の覚書もかねてイベントハンドラの設定方法をまとめてみようと思います。 尚、サンプルはボタンを押すと”クリックされました”とアラートが出るだけのシンプルなスクリプトでご紹介します。 (X)HTMLの中に記述する方法 <form> <input type="button" id="myButton" value="Click" onClick="alert('クリックされました');"> </form> (X)HTMLの中でイベントハンドラを利用する方法で(X)HTMLとスクリプトの分離ができていないのであまり良い方法とはされていませんがシンプルな方法の一つです。 .onclickを使う
EfficientJavaScript - Dev.Opera - 効率的な JavaScript 目次 この文書について 効率的な JavaScript ECMAScript eval や Function のコンストラクタを使うのはやめよう eval を書き換えよう 関数を使いたいなら function を使おう with を使うのはやめよう 性能を決める関数で try-catch-finally を使うのはやめよう eval と with は隔離しよう グローバル変数を使うのはやめよう 暗黙のオブジェクト変換に気をつけよう 性能を決める関数で for-in を使うのはやめよう 文字列は累積スタイルで使おう プリミティブの操作は関数呼び出しより速い setTimeout() や setInterval() には文字列でなく関数を渡そう DOM 再描画と再フロー 再フローの回数をでき
The Opera object? Yes the window.opera object. This is a script object that Opera has provided since Opera 5. It is provided to aid debugging of scripts. Many real-world scripts use window.opera to check if the browser is Opera. However, very few of them actually seem to use the properties or methods that are attached to this object. Opera documents many of these itself in its jsconsole.html, but
配列操作の比較表: Ruby, Python, JavaScript, Perl, C++ プログラムを書いていると、他のプログラミング言語の記憶とごっちゃになって、「配列の後ろに要素を追加するのは push だっけ、 append だっけ」などと混乱することがあります。特に Ruby, Python, JavaScript はコードの書き方が似ているので、この問題が起きがちです。 そこで、備忘録として、 Ruby, Python, JavaScript, Perl, C++ の配列操作の比較表を作りました。一番慣れている Ruby を基準にしています。間違いなどがあったらご指摘いただけると助かります。他の言語のもあるといいなあ。 Ruby (Array) Python (list) JavaScript (Array) Perl (@) C++ (std::vector)
スクリプト言語の比較 > クラス変数 Perl Python class Foo: x = 0 def __init__(self): Foo.x = Foo.x + 1 def foo(self): print Foo.x f1 = Foo() f1.foo() # => 1 f2 = Foo() f1.foo(); f2.foo() # => 2 2 Ruby @@ を前置(1.6から?) class Foo @@x = 0 def initialize @@x += 1 end def foo puts @@x end end f1 = Foo.new f1.foo # => 1 f2 = Foo.new f1.foo; f2.foo # => 2 2 ECMAScript(Javascript) コンストラクタ(これもFunctionオブジェクト)のスロットをクラス変数の様に使えま
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く