programing

어레이를 JSON으로 변환

luckcodes 2022. 11. 7. 22:24

어레이를 JSON으로 변환

어레이가 있다var cars = [2,3,..]몇 개의 정수를 담고 있습니다.어레이에 몇 가지 값을 추가했지만 이 어레이를 jQuery를 통해 페이지로 전송해야 합니다..get방법.송신용 JSON 오브젝트로 변환하려면 어떻게 해야 하나요?

하위 호환성 스크립트: https://github.com/douglascrockford/JSON-js/blob/master/json2.js

전화:

var myJsonString = JSON.stringify(yourArray);

주의: JSON 오브젝트는 현재 대부분의 최신 웹 브라우저(IE 8 이상)에 포함되어 있습니다.전체 목록은 caniuse를 참조하십시오.공로: @Spudley의 코멘트는 다음과 같습니다.

난 그렇게 만들었어

있는 경우:

var jsonArg1 = new Object();
    jsonArg1.name = 'calc this';
    jsonArg1.value = 3.1415;
var jsonArg2 = new Object();
    jsonArg2.name = 'calc this again';
    jsonArg2.value = 2.73;

var pluginArrayArg = new Array();
    pluginArrayArg.push(jsonArg1);
    pluginArrayArg.push(jsonArg2);

pluginArrayArg(순수 javascript 배열)를 JSON 배열로 변환하려면 다음 절차를 수행합니다.

var jsonArray = JSON.parse(JSON.stringify(pluginArrayArg))

와, 요즘 많이 쉬워진 것 같은데...3가지 방법:

json = { ...array };

json = Object.assign({}, array);

json = array.reduce((json, value, key) => { json[key] = value; return json; }, {});

다른 한 가지 방법은 다음과 같습니다.

        var json_arr = {};
        json_arr["name1"] = "value1";
        json_arr["name2"] = "value2";
        json_arr["name3"] = "value3";

        var json_string = JSON.stringify(json_arr);

json2 라이브러리를 사용하기로 했는데 "cyclic data structures"에 대한 오류가 발생했습니다.

json2에게 복잡한 오브젝트를 변환하는 방법을 알려줌으로써 해결했습니다.지금은 기능할 뿐만 아니라 필요한 분야만 포함시켰습니다.방법은 다음과 같습니다.

OBJ.prototype.toJSON = function (key) {
       var returnObj = new Object();
       returnObj.devid = this.devid;
       returnObj.name = this.name;
       returnObj.speed = this.speed;
       returnObj.status = this.status;
       return returnObj;
   }

또는 어레이를 개체로 정의해 보십시오.(var cars = {};) 그러면 json으로 변환할 필요가 없습니다.당신의 예에서는 이것이 실용적이지 않을 수 있지만, 나에게는 잘 작동했습니다.

어레이는 다음과 같기 때문에.push 함수를 사용하여 동적으로 작성했습니다.

my_array = ["234", "23423"];

어레이를 json으로 변환한 유일한 방법은

json = Object.assign({}, my_array);

2022년 답변

이게 제일 깔끔하고 좋은 대답인 것 같아요.

사용.JSON.stringify()JavaScript 어레이를 Json 문자열로 변환합니다.또, 사용방법JSON.parse()Json 문자열을 Json 개체로 변환합니다.

var JsonObject, jsArray;

// JS array
jsArray = ["one", "two", "three"];

// Convert (js array) to (json object)
JsonObject = JSON.parse(JSON.stringify(jsArray));

// type
console.log(typeof(JsonObject));

// JsonObject
console.log(JsonObject);

최단

정수 배열에서 유효한 json을 생성하려면

let json = `[${cars}]`

보다 일반적인 배열의 경우 JSON.stringify(cars)를 사용합니다(원형의 참조가 있는 객체의 경우 를 사용합니다).

let cars = [1,2,3]; cars.push(4,5,6);

let json = `[${cars}]`;

console.log(json);
console.log(JSON.parse(json)); // json validation

요청하신 것과 같은 오브젝트가 1개밖에 없는 경우, 다음과 같이 동작합니다.

var x = [{'a':'b'}];
var b= JSON.stringify(x);
var c = b.substring(1,b.length-1);
JSON.parse(c); 

Object.assign 함수를 사용하여 배열을 JSON으로 변환할 수 있습니다.여기서 가장 큰 문제는 Javascript 어레이가 제로 기반의 정수 키를 가지고 있다는 것입니다.이것에 의해, 어레이내의 데이터에 액세스 할 수 있게 됩니다.

let fruits = ['Apple', 'Banana']
document.write(fruits[0])

반품:

사과

어레이를 JSON으로 변환하면

{"0": "Apple", "1: "Banana"}

반대로 JSON 오브젝트에는 보통 다음과 같은 임의의 키가 포함되어 있습니다.

{ "some_key": "일부 값", "other_key: "다른 값"}

항목 목록을 생성하여 배열과 같이 동작하고 Object.assign을 배열처럼 사용하여 출력을 JSON 개체로 변환할 수 있습니다.

var items = {};
items["some_key"]="some value";
items["other_key"]="some other value";
const jsonString = JSON.stringify(Object.assign({}, items)) 
const json_obj = JSON.parse(jsonString);

아이템 리스트의 장점은 JSON 데이터를 문자열이나 따옴표, 콤마 등으로 취급할 필요가 없다는 것입니다.대신 데이터를 채우거나 제거하는 항목 개체를 관리할 수 있습니다.완료되면 항목 변수를 JSON 개체로 변환하고 필요한 작업을 수행합니다.

차량 배열: var cars = [2,3,..]이렇게 루프에 사용할 수 있습니다.

    var carArray = new Array();  

    for(var c in cars) {
      var jsonObj = new Object();
      jsonObj.car_id = cars[c];
      carArray.push(jsonObj);
    }
    

언급URL : https://stackoverflow.com/questions/2295496/convert-array-to-json