アプリ版:「スタンプのみでお礼する」機能のリリースについて

いつもお世話になります。
JSONでコメント行を書くにはどうしたらよろしいのでしょうか。
{"title":"sample data",
"person":[
{"id":"1","nameFirst":"太郎","nameLast":"鈴木","age":"24","birth":"1234-12-22"},
{"id":"1","nameFirst":"花子","nameLast":"鈴木","age":"24","birth":"3456-12-22"}
]}
などというデータを

javascriptと同じ要領で以下のようにコメントアウトすると

{"title":"sample data",
"person":[
//{"id":"1","nameFirst":"太郎","nameLast":"鈴木","age":"24","birth":"1234-12-22"},
{"id":"1","nameFirst":"花子","nameLast":"鈴木","age":"24","birth":"3456-12-22"}
]}

$.getJSON(jsonDataUrl,function(json) {
successFunc(json);
return;
});
で、読み取れなくなってしまいます。
JSONは、そもそもコメント行の記載ができないのでしょうか。
よろしくお願いいたします。

A 回答 (2件)

> コメント行


ありません。注釈自体は(例でやっているように)title なり description なりのフィールドを設ければ良い。また、ECMA 262-3 までの範囲なら、"$" は機械処理の目印に使う文字ですので(前処理、後処理、マクロ、埋め込み)、 それを含むフィールド名は無視するなど自分ルールでも作って下さい。

無視したいデータの構造が分かっているなら:

var json = '{"title":"sample data","person":[{"id":"1","nameFirst":"太郎","nameLast":"鈴木","age":"24","birth":"1234-12-22"},{"id":"1","nameFirst":"花子","nameLast":"鈴木","age":"24","birth":"3456-12-22"}]}';

json = JSON.parse (json, function (name, value) {
 if (name === 'person') {
  var result = [ ], r;
  for (var I = value.length, i = 0; i < I; i++) {
   r = value[i];
   if (r.id != 1 || r.nameFirst !== '太郎' || r.nameLast !== '鈴木' || r.age != 24 || r.birth !== '1234-12-22') {
    result[result.length] = r;
   }
  }
  return result;
 }
 return value;
});

alert (JSON.stringify (json, undefined, 2));

// JSON オブジェクトがなければ www.json.org のライブラリを使う
    • good
    • 0
この回答へのお礼

Chaireさん、ご丁寧にサンプルまで示していただきありがとうございます。
>ありません。注釈自体は(例でやっているように)title なり description なりのフィールドを設ければ良い。
そうですか。
私の発想を変えないとダメなようです。
どうもありがとうございます。

お礼日時:2011/06/20 13:42

こんにちは。



JavaScript上はJSONとして送られてきた文字列をそのままデータとして利用しますので//が入るとおかしいことになってしまい、エラーになります。

JSONとしてデータを返す際にコメントを使いたいシチュエーションが思い浮かばないのですがやりたいことを補足いただければ解決策が出てくるかもしれません。

この回答への補足

LancerVIIさん、早速レスありがとうございます。
>やりたいことを補足いただければ解決策が出てくるかもしれません。
1.サンプルデータを用いて動作確認を行うことが目的です。
そして、動作しても後に再び不具合が出た時のためにそのサンプルデータを残しておき復活させてチェックをしようと思っています。
ですから、行単位コメントアウト「//」に相当するものがあるととても助かります。

2.また、データを作成する時にコンマ一つ、シングルクオーテーション一つでデータを読み込まなくなります。その箇所を特定するためにコメントアウトしていき、誤りの箇所を特定する時に使おうと考えています。
他のソフトでJSONデータを作成するというのでなく、javascriptの配列を手作業で入力する程度のJSONデータを扱うことを考えています。


3.連想配列でわかりやすい記載なので操作方法に慣れれば、単なる配列よりもデータの記載がしやすいように思いまして。javascriptで連想配列を記載しても同じとは思いますが。JSONのデータはjavascriptが軽量に扱うというような記載を読んだものですのでとても興味を持ってその扱い方を調べています。

4.更に、JSONデータだと、AJax技術でもって容易に読み込めるようですので。何とか使えるようになりたいと思っています。
javascriptの配列だと、
<script src="・・・" type="text/javascript"></script>
で、読み込めはしますが、スマートでないような気がしまして。

誤った理解をしているようなことがありましたら併せて教えていただけるとありがたいです。

補足日時:2011/06/20 13:36
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!