VUE3.0을 빠르게 시작하는 방법: 학습 시작
관련 권장 사항: JavaScript 튜토리얼
이 수준의 작업: JavaScript에서 JSON 개체를 정의하는 연습을 하세요.
구체적인 요구 사항은 다음과 같습니다.
세 가지 속성(key1, key2 및 key3)이 있는 JSONObject를 정의합니다. 해당 값은 각각 매개변수 a, b 및 c입니다.
삭제가 완료된 후
key3이라는 속성을 삭제합니다.
나머지 모든 속성은 중간에 로 구분된 각 속성의 값을 연결하여 구성된 문자열을 반환합니다.
JSON은 데이터를 전송하는 데 사용되므로 먼저 데이터를 저장해야 하며 일반적으로 사용됩니다 . JSON의 데이터 형식에는 JSON 개체, JSON 배열 및 JSON 문자열이 포함됩니다.
JSON 개체(일반적으로 JSON이라고 함)는 데이터를 저장하고 전송하는 데 사용되는文本数据
교환 형식입니다. 예는 다음과 같습니다.
{"name":"Jerry", "age":15}
이는 간단한 json 개체입니다. 규칙은 다음과 같습니다.
键/值对
JSON은 JavaScript 구문을 기반으로 하므로 JSON에도 객체라는 개념이 있지만 JavaScript의 객체와는 약간의 차이가 있습니다.
var myObject = { 아이디:1, 이름:"피터 브루스", "이름":"브루스", 디스플레이:함수() { console.log(this.name); }}
{"id":1,"name":"Peter Bruce","first name":"Bruce"}
(1) JSON
개체의 속성 이름(키)은 큰따옴표로 묶어야 하며 , JavaScript 개체는 공백이 있는 속성 이름과 중간에 하이픈이 있는 속성 이름을 큰따옴표로 묶어야 한다는 점을 제외하면 임의적입니다.
(2) 메소드는 JSON 객체에서 정의할 수 없지만 JavaScript对象
에서는 정의할 수 있습니다.
(3) JSON 객체는 다양한 언어로 작동할 수 있지만 JavaScript 객체는 JS 자체에서만 인식할 수 있습니다 .
{}
로 둘러싸여 있습니다. 내부에는 여러 속성 이름과 속성 값으로 구성된 키-값 쌍이 있으며, 속성 이름과 속성 값이 있습니다. :
속성으로 구분됩니다. 값은 숫자, 문자열, JSON 배열, JSON 객체, null 등의 데이터 유형 중 하나일 수 있습니다. 예:
{"a":1,"b":2.12,"c":true,"d":"string","e":null}
속성 값이 JSON 배열 또는 JSON 개체인 경우 레벨이 약간 더 복잡해집니다.
JSON을 지원하는 모든 언어에서는 JSON 개체를 사용할 수 있습니다. 여기서는 JavaScript에서 JSON 개체를 사용하는 방법만 소개합니다.
var jsonObject = {"name":"js","number":2};
.
또는 []
:console.log(jsonObject.name); //속성을 읽고 출력합니다. jsconsole.log(jsonObject["name"]); //속성 읽기 및 출력 jsjsonObject.name = "javascript"; //속성을 쓰고, name 속성에 값을 할당하고, javascript를 사용하여
var jsonObject = {"name":"js","number":2}; jsonObject.name 삭제; //name 속성을 삭제하고
var jsonObject = {"name":"js","number":2};for(att in jsonObject) { console.log(jsonObject[att]); //시퀀스의 js, 2}
function mainJs(a,b,c) { //여기에 코드를 작성해주세요 /********** 시작 **********/ var JSONObject = {"key1":a,"key2":b,"key3":c}; JSONObject.key3 삭제; a+","+b를 반환합니다. /************ 끝 ************/}
이 수준 작업: JSON 키-값 쌍의 값을 정의하고 조작합니다.
구체적인 요구사항은 다음과 같습니다.
예:
{"country":"China","population":"1.3billion ","bigCity":[ "Peking", "Shanghai", "ShenZhen", "HongKong"]}
속성 bigCity에는 배열에 배치되는 여러 값이 있습니다.
위의 예에서 배열의 각 요소는 문자열입니다. 실제로 배열의 각 요소는 또 다른 json 객체일 수도 있습니다 . 예:
{"class":"3학년 1학년","studentNumber":70,"score":[ {"이름":"리밍","점수":128}, {"이름":"장화","점수":134}, {"name":"ShenLu","score":112}]}
위의 점수 속성 값은 배열이며, 이 배열의 각 요소는 json 개체입니다.
var myJson = {"country":"China","population":"1.3billion","bigCity":["Peking","Shanghai","ShenZhen","HongKong "] }console.log(myJson.bigCity[1]); // 출력 ShanghaimyJson.bigCity[0] = "GuangZhou";//첫 번째 요소에는 GuangZhou
값이 할당됩니다.
var myJson = {"country":"China","population":"1.3billion","bigCity":["Peking","Shanghai","ShenZhen", "홍콩"]}for(var i = 0;i < myJson.bigCity.length;i++) { console.log(myJson.bigCity[i]);//Peking, Shanghai, ShenZhen, HongKong}
. [첫 번째 방법은 나중에 작성되었으며 아래 두 번째 방법은 당시에 사용되었기 때문에 처음에 사용되었습니다. 안되면 그냥 직접 출력하고 싶어요]
var myJson = { "범주":"컴퓨터", "세부사항":"프로그래밍", "언어":[ "js","java","php","python","c" ]}함수 mainJs(a) { a=parseInt(a); //여기에 코드를 작성해주세요 /********** 시작 **********/ var b = ""; for(var i=0;i<a;i++){ b = b+myJson.언어[i]+","; } b.slice(0,-1)을 반환합니다. /************ 끝 **********/}
var myJson = { "범주":"컴퓨터", "세부사항":"프로그래밍", "언어":[ "js","java","php","python","c" ]}함수 mainJs(a) { a=parseInt(a); //여기에 코드를 작성해주세요 /********** 시작 **********/ if(a==1){ myJson.언어[0]을 반환합니다. } if(a==2){ return myJson.언어[0]+","+myJson.언어[1]; } if(a==3){ return myJson.언어[0]+","+myJson.언어[1]+","+myJson.언어[2]; } if(a==4){ return myJson.언어[0]+","+myJson.언어[1]+","+myJson.언어[2]+","+myJson.언어[3]; } if(a==5){ return myJson.언어[0]+","+myJson.언어[1]+","+myJson.언어[2]+","+myJson.언어[3]+","+myJson.언어[4 ]; } /************ 끝 ************/}
작업: JSON 문자열과 JavaScript 개체를 서로 변환하는 연습을 합니다.
구체적인 요구 사항은 다음과 같습니다.
프런트 엔드로 반환 JSON은 백그라운드에서 데이터를 전송하는 데 사용할 수 있지만 실제로 전송되는 것은 JSON 문자열이므로 JSON 개체를 직접 전송할 수 없습니다.
JSON 문자열은 다음과 같이 JSON 개체의 양쪽에 '
넣어 구성된 문자열입니다.
var JSONObject = {"k1":"v1","k2":"v2"}; //JSON 객체 var JSONString1 = '{"k1":"v1","k2":"v2"}'; //
JSON 문자열 위의 JSONSring1은 JSON 문자열로, 프런트엔드에서 백엔드로, 백엔드에서 프런트엔드로 직접 전달할 수 있습니다.
JavaScript가 백그라운드에서 전송된 JSON 문자열을 수신하면 쉽게 처리할 수 있도록 JSON 객체로 변환하는 방법은 무엇입니까?
JSON.parse(a,b)
메서드는 JSON 문자열 a를 JavaScript 객체로 변환합니다. b는 선택적 함수 매개변수입니다.
var JSONString1 = '{"k1":"v1","k2":"v2"}';console.log(JSON.parse(JSONString1)); //출력 객체 {k1: "v1", k2: "v2"}
함수 매개변수 b는从里到外
순서로 객체의 모든 속성에 작용하고, 마지막 것은 객체 자체에 작용합니다
. object 값에 1을 추가합니다. var text = '{ "key1":1, "key2":2, "key3":2.2}';var obj = JSON.parse(text, function (key, value) { if(key === '')//객체 자체를 만나면 1을 더하지 않고 값을 반환합니다. return value+1;//속성 값에 1을 추가합니다});console.log(obj); //Output Object {key1: 2, key2: 3, key3: 3.2}
위에 표시된 것처럼 함수에는 두 개의 매개변수가 있습니다. 여기서 key는 속성의 이름을 나타내고 value는 객체 자체의 값을 나타냅니다. key 값은 ''
이며, 이는 빈 문자열입니다.
JSON.stringify(a,b,c)
로 변환합니다. a는 변환할 JSON 개체이고, b 및 c는 선택적 매개 변수입니다.
var JSONObject = {"k1":"v1","k2":"v2"}; JSON.stringify(JSONObject); //JSON 객체를 JSON 문자열로 변환 매개
변수 b가 함수인 경우 함수는 JSON 객체의 각 속성을 내부에서 외부로 순서대로 처리합니다. JSON 문자열로 변환 :
//객체의 모든 속성 값에 1을 더한 후 문자열로 변환합니다. var JSONObject = {"k1":1,"k2":2.2};var JSONString = JSON.stringify( JSONObject,함수(k,v){ if(k === '')//JSON 객체 자체가 처리됩니다. return v; return v+1;//모든 속성의 값에 1을 추가});console.log(JSONString); //출력 {"k1":2,"k2":3.2}
매개변수 b는 배열일 수도 있으며 배열은 속성의 이름을 저장하고 어떤 속성만 변환되는지 지정하는 데 사용됩니다
. 개체 var JSONObject = {"k1":1,"k2":2.2,"k3":3};var JSONString = JSON.stringify(JSONObject,["k1","k2"]);console.log(JSONString) ; //출력 {"k1":1,"k2":2.2}
다음은 c에 대한 간략한 소개입니다.
var str = ["name":"Tom","age":16];var obj1 = JSON.stringify( str) ; var obj2 = JSON.stringify(str,null,4);console.log(obj1); //출력 {"name":"Tom","age":16}console.log(obj2); //산출//{ // "이름": "톰", // "나이": 16 //}
매개변수 c: 텍스트에 들여쓰기, 공백 및 줄바꿈을 추가합니다 . c가 숫자인 경우 반환 값 텍스트는 각 수준에서 지정된 공백 수만큼 들여쓰기됩니다. c가 10보다 크면 텍스트는 10개의 공백만큼 들여쓰기됩니다.
var JSONString = '{"key1":"value1","key2":"value2"}';function mainJs(a) { //여기에 코드를 작성해주세요 /********** 시작 **********/ var JSONObject = JSON.parse(JSONString); JSONObject["key1"] = a; JSONObject.key1 = a; JSON.stringify(JSONObject)를 반환합니다. /************ 종료 ************/}
관련 추천 : 자바스크립트 학습 튜토리얼
위는 자바스크립트 학습 및 이해를 위한 JSON(요약 공유)의 상세 내용입니다. 자세한 내용은 중국 웹사이트의 PHP 기타 관련 기사를 참고하세요!