亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

轉換js結構中的數據

轉換js結構中的數據

三國紛爭 2023-12-14 12:48:29
我從 php 獲取數據,例如:[{'lat': 31.5755, 'lng': -85.279}, {'lat': 31.5755, 'lng': -85.279}, {'lat': 31.5755, 'lng': -85.279}, {'lat': 31.5755, 'lng': -85.279}, {'lat': 31.5755, 'lng': -85.279}, {'lat': 31.5755, 'lng': -85.279}, {'lat': 31.5755, 'lng': -85.279}, {'lat': 32.2334, 'lng': -86.2085}, {'lat': 32.2334, 'lng': -86.2085}, {'lat': 42.8142, 'lng': -73.9396}, {'lat': 42.8142, 'lng': -73.9396}, {'lat': 42.8142, 'lng': -73.9396`enter code here`}, {'lat': 42.8142, 'lng': -73.9396}, {'lat': 42.8142, 'lng': -73.9396}, {'lat': 38.6207, 'lng': -83.8067}, {'lat': 42.3644, 'lng': -71.0633}, {'lat': 40.0625, 'lng': -79.8953}, {'lat': 34.4197, 'lng': -119.7078}, {'lat': 42.8142, 'lng': -73.9396}, {'lat': 42.0702, 'lng': -72.6227}]但在 js 中我想將其轉換為:const locations = [  { lat: -31.56391, lng: 147.154312 },  { lat: -33.718234, lng: 150.363181 },  { lat: -33.727111, lng: 150.371124 },  { lat: -33.848588, lng: 151.209834 },  { lat: -33.851702, lng: 151.216968 },  { lat: -34.671264, lng: 150.863657 },  { lat: -35.304724, lng: 148.662905 },];誰能建議我如何以這種方式轉換它。我想刪除單引號并想要像這樣的新結果數組
查看完整描述

1 回答

?
森林海

TA貢獻2011條經驗 獲得超2個贊

不,它不是從控制器獲取的 ajax 響應,例如 var value = "{{myValue}}" 以這種方式我得到

在這種情況下,如果您刪除包裝引號,就可以了 - JavaScript 可以在對象文本中使用單引號屬性名稱:

var values = {{myValue}};

JavaScript 引擎將看到的是:

var values = [{'lat': 31.5755, 'lng': -85.279}, /*...*/];

這很好。


如果它是 ajax 響應,最好的辦法是修復 PHP,使其提供有效的 JSON(雙引號而不是單引號)。然后你可以用 解析結果JSON.parse。

作為第二好的解決方案,如果您不能這樣做,因為數據中唯一的單引號是屬性名稱周圍的單引號,您可以將它們替換為雙引號,然后解析結果:

const locations = JSON.parse(theDataString.replace(/'/g, '"'));

但是,這只有效,因為沒有任何其他單引號。這不是一個好方法;而是修復 PHP 端。


查看完整回答
反對 回復 2023-12-14
  • 1 回答
  • 0 關注
  • 151 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號