簡體   English   中英

如何在JavaScript中將字符串對象轉換為json對象

[英]how to convert string object to json object in javascript

我已將字符串格式的數據更改為類似於[對象對象]的格式,但我想將字符串對象更改為我嘗試過json.parse的json對象,但未將其更改為json對象

你能建議我哪里做錯了以及如何解決這個問題

try {
  var timekeep = await Orders.findAndCountAll({
    where: {
      cid: orders_info.cid,
    },
    order: [
      ['id', 'DESC']
    ],
    limit: 1,
    raw: true,
  });
  var cont1 = JSON.stringify(timekeep.rows[0]);
  var obj = JSON.parse(cont1);
} catch (err) {
  console.log(err)
}

console.log('org data' + timekeep)
console.log('data as string' + cont1);

// now when I am trying to print
console.log('data as json' + obj);

console.logs的輸出

org data [object Object]

data as sttring{"id":4006,"mid":1,"cid":41,"wid":7138,"oid":null,"status":null,"options":null,"starttime":"2018-08-15T06:08:55.000Z","duration":null,"ordertotal":50,"counter":null,"closetime":null}

data as json [object object]

從我所看到的,您已經使用var obj = JSON.parse(cont1);將其轉換為JSON var obj = JSON.parse(cont1);

因此您已經有了一個JSON,只是您打印它的方式是錯誤的。 以逗號代替+。

console.log('data as json', obj)

+正在執行字符串連接,並且正在嘗試將字符串與對象連接

在String concat之后,它將data as json [object object]打印data as json [object object] 如果您放,而不是+將正確打印該對象。 在摘要中,您可以看到不同之處。

 var jsonstr = '{"id":4006,"mid":1,"cid":41,"wid":7138,"oid":null,"status":null,"options":null,"starttime":"2018-08-15T06:08:55.000Z","duration":null,"ordertotal":50,"counter":null,"closetime":null}'; console.log(JSON.parse(jsonstr)); console.log('data as json' , JSON.parse(jsonstr)); console.log('data as json' + JSON.parse(jsonstr)); 

console.log只是對象; 如果要使用log對象和字符串,請使用而不是+

 jsonString = '{"key1":"value1","key2":"value2"}' jsonObject = JSON.parse(jsonString) console.log(jsonObject) // logging just the object console.log('jsonObjectName' , jsonObject) // logging object with string console.log('jsonObject.key1 : ' + jsonObject.key1 ) // this may come handy with certain IE versions function parseJSON(resp){ if (typeof resp === 'string') resp = JSON.parse(resp); else resp = eval(resp); return resp; } 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM