JSON.stringify()

このエントリーをはてなブックマークに追加

JSON.stringify()はオブジェクトをJSON形式の文字列に変換するためのメソッドです。

var obj = {
	foo:"val",
	bar:"daa"
};
console.log(JSON.stringify(obj));//{"foo":"val","bar":"daa"}

返還時に値がundefinedや関数のプロパティは削除されます。

var obj = {
	str : "val",
	num : 1,
	bool : true,
	arr : ["val1","val2","val2","val4"],
	und : undefined,
	fun : function(){
		return false;
	}
};
console.log(JSON.stringify(obj));//{"str":"val","num":1,"bool":true,"arr":["val1","val2","val2","val4"]}

第2引数にはreplacerとしてコールバック関数が指定でき返還時の処理を設定できます。
例えば以下のように指定することでnumber型の数値をstring型に変換したJSONを作成することができます。

var obj = {
	str : "val",
	num : 1
};
JSON.stringify(obj,function(key,val){
	if(typeof val === "number")val = val+"";
	return val;
});//{"str":"val","num":1}

第3引数にはインデントの空白文字が指定できます。以下のように\tを指定するとタブ文字でインデントされたJSONが生成できます。

var obj = {
	str : "val",
	num : 1
};
JSON.stringify(obj,"","\t");

文字列をJSONオブジェクトに変更するにはJSON.parse()を利用します。

対応ブラウザ

IE Chrome Safari Firefox iOS Android
◯ 8〜 ◯ 4〜 ◯ 4〜 ◯ 3.5〜 ◯ 4.1〜 ◯ 2.1〜

登録日 : 2015年09月16日 最終更新日 : 2015年10月5日

同じカテゴリー(JSON)のエントリー

検索

スポンサードリンク

バージョン

リファレンス