jsでオブジェクトと文字列を相互に変換する方法

今日勉強していたら json_stringify と json_parse という 2 つのメソッドを見つけました。何か似ているのかなと思ってネットで調べました。次は一緒に調べてみましょう。次のコードを見てみましょ

			var obj = {
				'name':'lala',
				'age':19,
				'sex':'nan'
			}
			var arr1 = ['stuid','classid',51];
			var arr2 = ['name','age',11];
			//	一个参数时
			console.log(JSON.stringify(obj));
			//	两个参数时    第二个参数为数组,可以看到只显示了name和age,因为sex属性在数组arr2里没有,所以没显示
			var doublearr = JSON.stringify(obj,arr2);
			console.log(doublearr);
			//	两个参数时    二个参数都为数组,只会显示第一个
			console.log(JSON.stringify(arr1,arr2));
			//	两个参数时    第二个参数为函数,返回json类型格式的字符串
			var doubargment = JSON.stringify(obj,function (key,value) {
				return value;
			});
			console.log(doubargment);
			//	三个参数时    第三个参数为分隔符,可以看到都是以gbk开头的
			console.log(JSON.stringify(obj,function (key,value) {
				return value;
			},'gbk'));

実行時の効果は以下の通りです。
ここに画像の説明を挿入
json_parse の使い方を見てみましょう

			var str = '{"name":"lala","age":13,"sex":{"fist":"nan","two":"nv"}}';
			var obj = JSON.parse(str);
			console.log(typeof obj)
			console.log(obj);

操作の効果は次のとおりです
ここに画像の説明を挿入
。文字列 str がオブジェクトに変換されたことがわかります。上記 2 つのケースを要約すると、 json_stringify の機能はオブジェクトを json 形式の文字列に変換することであることがわかります。 json_parseはjs形式の文字列の文字をオブジェクトに変換します

注: json_parse は変換するには json 形式である必要があります。それ以外の場合はエラーが報告されます。純粋な数値と文字列「null」はエラーを報告しません。

さて、今日のまとめの時間です

  1. json_stringify ---- オブジェクトを json 形式の文字列に変換します
    1. 構文: JSON.stringify(値オブジェクト[, 置換関数/配列] [, スペース区切り文字])
    2. 最初のパラメータと 2 番目のパラメータの両方が配列の場合、最初のパラメータのみが表示されます
    3. オブジェクト+配列表示共通、オブジェクト属性==配列値
    4. 区切り文字が数値の場合は、インデントする文字数を定義します。もちろん、10 より大きい場合、最大値は 10 です
  2. json_parse ---- json形式の文字列をjsonオブジェクトに変換します
    1. 構文: json_parse(json-str)

今日の勉強はこれで終わりです、さようなら~

おすすめ

転載: blog.csdn.net/Smallwhitestrive/article/details/120927873