Ajaxの「prototype」( http://www.prototypejs.org/ )などで
下記のようなfunctionの記述方法をよく見かけます。
▼Prototype.js(ver1.5.0) 20行目抜粋
----------------------------------------
var Class = {
create: function() {
return function() {
this.initialize.apply(this, arguments);
}
}
}
--------------------------------------------
でも、私には高度すぎて以下の点がどうしても読み解けません。
(1)var Class = {~~~~~~} が、何をしているのか分かりません。
配列なら[ ]ですし関数か何かを省略した宣言の記述方法なのでしょうか?
(2)create: が何なのか分かりません。必死で調べたら型を宣言しているような感じでしたが、
見慣れない「:」を使ったプログラムで検討もつきません。
私が知っているfunction宣言はこの2パターンのみしか知りません。
・一般的なfunction宣言
function test(hikisu){
//処理内容
}
・無名関数でのfunction宣言
var a = function(x) {
//処理内容
}
ぜひ教えていただけませんでしょうか。
どうぞよろしくお願いします。
No.1ベストアンサー
- 回答日時:
1. {}はオブジェクト初期化子である。
つまりnew Object()と同じ2.{variable : value}と書くので変数名と値の区切りに:を使っている。
valueのところにfunction(){}を書いても全く問題ない。
以下を参考に
var array = new Array();
var array = []; // 配列の初期化子
array = [1, 2]; // まとめて初期化
array[0] // => 1
array[1] // => 2
var object = new Object();
var object = {}; // オブジェクトの初期化子
object = {a : 1, b : 2}; // まとめて初期化
object.a // => 1
object.b // => 2
var Class = {~~~~~~} はnew Object()のことだったんですね。
変数への代入も、「=」を使わず「:」で行う方法も知りませんでした。
(型の宣言かなにかと大勘違いしてました・・・)
大変助かりました。どうもありがとうございました。
No.2
- 回答日時:
ここに[翻訳]JSON入門というページがあります。
http://d.hatena.ne.jp/brazil/20050915/1126709945
その中に
オブジェクト
{ メンバ }
{}
メンバ
文字列 : 値
メンバ , 文字列 : 値
配列
[ 要素 ]
[]
要素
値
要素 , 値
値
文字列
数値
オブジェクト
配列
true
false
null
こんな記述があります。
この中で値にオブジェクトがあります。
ではオブジェクトとは何かと言うと、ここに”オブジェクトモデルの詳細”と言うページがあります。 http://developer.mozilla.org/ja/docs/Core_JavaSc …
こんなことだと思いますよ。
JSONは聞いたことがある程度で、ぜんぜん知りませんでした。
また、教えていただいた[翻訳]JSON入門サイト(http://d.hatena.ne.jp/brazil/20050915/1126709945)に、記述文法の構造図が分かりやすく掲載されていました!!!
かなり検索しまくっても見つからなかったので感激です。
全記述方法が載っているのでとても重宝しています。
どうもありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript 1日1回引けるJavaScriptおみくじについて 1 2022/12/12 22:28
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/07 21:04
- JavaScript スマフォではボタンを表示させたくない 2 2023/01/20 14:26
- JavaScript html5に変えるとスライドショーが消えてしまった。 3 2022/03/26 19:53
- JavaScript ソースコードのいじる場所が分かりません。 1 2022/12/23 02:06
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/30 09:10
- JavaScript JavaScriptの即時関数の書き方 1 2022/11/29 09:52
- JavaScript 変数のスコープの問題? 3 2022/06/23 09:32
- JavaScript EasyUIのSubGrid(jquery)におけるObjectに入れた連想配列について 1 2022/05/02 11:21
- JavaScript javascriptで移動ボタンを押した際に遷移するボタンを追記したい 1 2022/11/29 03:02
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
javaScriptでグローバル変数に...
-
ローカルのレジストリを読みたい
-
一定時間経つと画像を消す方法
-
エクセル2010のvbaについて
-
フォルダ内のファイル名を取得...
-
デザイン時のVisible=Falseは実...
-
JSPの処理の途中で、JavaScript...
-
JavaScriptで ブラウザの閉じる...
-
自作のJavaScriptを既存のペー...
-
Ajaxが動きません~『status=0』?
-
Windows Form のMSChartで、グ...
-
Excel vba 配列内の最大値を求...
-
if(1){...}とはどういうことで...
-
特定の文字でエラー
-
1つのVBAコードをすべてのコア...
-
フォルダを自動で開く
-
amazonの商品画像拡大のようなj...
-
VB.NET2003 テキストボックスに...
-
VBScript から JavaScript を呼...
-
ASPによるEXCELファイルの操作
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Webページ中の javascript をVB...
-
ローカルのレジストリを読みたい
-
画面間でのJavaScrip...
-
フォルダ内のファイル名を取得...
-
エクセル2010のvbaについて
-
javaScriptでグローバル変数に...
-
event.srcElementの動的設定
-
JavaScriptでオブジェクトを識...
-
正規表現内に変数を使用する方法
-
ASP.NETでURLにマッピングされ...
-
javascript 名前空間?
-
文字を移動させその位置を表示...
-
JavaScript 日数計算の関数で演...
-
Shell.ApplicationでのIEオブ...
-
オライリーのプログラミングPHP...
-
イベントevt?evt.target:event....
-
タブブラウザで focus() を実...
-
jquery か javascript で json ...
-
クラス デフォルトプロパティの...
-
jQueryの仕組みについて質問です
おすすめ情報