[JS] 29. Object, JSON
5734 ワード
0)Arrayのその他の機能
1)対象
Javaの集合に似た概念
list → array
map→駄目みたい?代替案としてobjectを使用します.
set→es 6サポート
JavaScriptではオブジェクトはサポートされていません.
オブジェクト向けのカプセル化、隠匿性、継承はサポートされていません.
しかし、すべては客体です.
言葉のトリックで真似したのです.
es 6は支援を開始したが、それらの小細工は消えず、ずっと使われていた.
だから両方知っておく必要があります.
突然objectを作成します.
試験にはkor属性はありませんが、定義はなく、直接使用します.
プロパティはobjectで空で、korプロパティがあります.
(Expand Objectとなります.)
やってみる
var exam = new Object();
exam.kor = 30;
exam.eng = 70;
console.log(exam.kor+exam.eng);
100が出てきた大文字と小文字をよく区別する.△よく観察する.
["속성이름"]
で表すことができます.2)
var exam = new Object();
exam.kor = 30;
exam.eng = 70;
console.log(exam.kor+exam["eng"]);
結果はやはり100でした.値を削除する方法(鍵の削除方法)
->delete:オブジェクトではなく属性を消去するためにのみ使用します.
var exam = new Object();
exam.kor = 30;
exam.eng = 70;
console.log(exam);
delete exam.eng
console.log(exam);
2番目のdeleteではeng値が消失することがわかります.
2) JSON (Javascript object notation)
JAvascriptの値はマルチリファレンス変数であり、変数はマルチリファレンス変数である.(基本型はありません.)
手書きで書くと左側と同じです.
JSONは内部に箱を作っていますが、どう書いてあるのか分かりません.
空の配列は、objectがそのように表現されます.
var exam = new Object();
の代わりにvar exam = {};
を使用します.これからはこの方法を使いましょう.
鍵(id)は無条件に文字(string)である.
JSONでは、文字の原則は二重引用符です.(省略可能)→問題になる場合があります.
オブジェクト内の情報を伝え、保存したい場合は、このような表現が簡潔です.
アレイによる表示
var notices = [
{id:1, title:"hello json"},
{id:2, title:"hi json"},
{id:3, title:"json is..."}
];
console.log(notices[1].title);
console.log(notices[1]["title"]);
出力結果は両方ともhijsonです.もともと順番がないので、別の場所に送ると順番があります.
その順番をカンマで区切ってCSVと言います.
CSVを重ねてはいけません.
XMLはタグを用いてタグ付けを行い,タグの概念を重ねる.
オーバーラップモデルは直感的で、数が不定です.
より多くの記号を費やす必要はありません.
XML、CSVのメリット→JSON
(簡潔CSV、強大複雑XML→簡潔強大JSONが欠けている)
3) eval()
var value = "var x = 30;";
console.log(x);
x変数がなければ、もちろんエラーが発生します.2)
var value = "var x = 30;";
eval(value);
console.log(x);
evalを書くのは間違いありません.1)
var value = "{'id':1, title:'hello'}";
eval(value);
console.log(value.title);
オブジェクトを含む変数はありません.
実行コードにコンテナがありません.
そのためエラーが発生しました.
var value = "{'id':1, title:'hello'}";
eval("var data="+value+";");
console.log(data.title);
3)
var value = "{'id':1, title:'hello'}";
var data = eval("("+value")");
console.log(data.title);
4) JSON parser
1)
var value = "{'id':1, title:'hello'}";
var data = JSON.parse(value);
console.log(data.title);
var value = '{"id":1, "title":"hello"}';
var data = JSON.parse(value);
console.log(data.title);
これらの不便な点を解決してくれるやつがいます.
var json = JSON.stringify(data);
console.log(json);
console.log(typeof json);
データとタイプがstringであることを確認します.
2)
var json = JSON.stringify([1,2,3,{id:1, writer:'abc'}]);
console.log(json);
console.log(typeof json);
やはり結果は[1,2,3{id:1,writer:「abc'}」,stringであった.Reference
この問題について([JS] 29. Object, JSON), 我々は、より多くの情報をここで見つけました https://velog.io/@psh94/JS-yqiqcv75テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol