我正在處理一個 HTML 檔案。我有一個字典串列,這些字典是從我的 Python 檔案中通過 Flask 獲得的。我試圖在 JavaScript 中遍歷串列的每個元素并獲取值。我嘗試了這些解決方案但它們不起作用:
```for (let i = 0; i < 6; i )
{
var value = '{{data[i]["key"]}}'
//do some stuff with it.
}```
錯誤:
檔案“/home/ubuntu/final_project/templates/results2.html”,第 144 行,在頂級模板代碼中 var stuff = {{data[i]['key']}} 檔案“/usr/local/lib/ python3.9/site-packages/jinja2/environment.py", line 452, in getitem return obj[argument] jinja2.exceptions.UndefinedError: list object has no element Undefined
并且沒有雙大括號周圍的引號:
```for (let i = 0; i < 6; i )
{
var value = {{data[i]["key"]}}
//do some stuff with it.
}```
同樣的錯誤。
最后:
```for (let i = 0; i < 6; i )
{
var temp = '{{data}}'
var value = temp[i]["key"]
//do some stuff with it.
}```
但這也不起作用。它開始逐個字符地回圈遍歷資料。(輸出是 'undefined' 6 次。
然而,這似乎不起作用。有沒有辦法在 JavaScript 中獲取“資料”串列的“第 i 個串列”,或者我是否必須回傳到我的 python 檔案并逐個發送每個字典槽燒瓶?
uj5u.com熱心網友回復:
再會,
跟隨您的代碼示例,您似乎正在嘗試讀取串列的內容,操作每個專案并存盤新值。在 ECMA6 中,我們有用于此類操作的 map 方法。map 方法接受一個函式,該函式將在串列的每個元素上執行。您不必像舊學校那樣宣告 i 或遍歷串列。當然,這種方法也有解決方案,但這是現代方法。
const data = [l1,l2,l3]
const newData = data.map( () => { return do_stome_stuff() }); //do some stuff
如果您需要根據鍵執行某些操作,則必須在函式內部為此設定邏輯。
我希望這有助于解決您的問題!
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/333861.html
標籤:javascript Python json 烧瓶
