我有一個非常簡單的 obj 陣列,我需要顯示每個 obj 的鍵和值。
大批
sequence_break: [
{
"Step 4": "Step 6",
},
],
我現在需要在頁面上顯示為S4 -> S6
以前在處理看起來也相同的字串陣列時["Step 2", "Step 3"],但這很容易通過使用 v-for 然后獲取字串并運行:
S{{item.slice(5)}}
這會洗掉Step它之后的 and 空間,然后我只是S在它前面放一個以獲得所需的結果。
我可以做類似的事情str = str.slice(0, 3) str.slice(4),但我不知道這個數字是否會是兩位數,所以我認為添加S是最安全的選擇。
無論如何,現在我不確定如何使用這個 obj 陣列來做到這一點,并將鍵和值與 obj 隔離開來。我不太了解正則運算式,但我也不相信這是最好的選擇。
TL;DR:
如何[{ "Step 4": "Step 6" }]轉向S4 -> S6.
任何建議將不勝感激!
干杯!
uj5u.com熱心網友回復:
我認為您應該重新評估您的資料結構及其服務的目的。
在我看來,陣列中的物件錯誤地使用了鍵值對。
以下是執行您要求的代碼:
const getStepDisplayText = (sequenceBreakArray) => {
return sequenceBreakArray.map((sequenceBreakItem) => {
let currentStep = Object.keys(sequenceBreakItem)[0],
nextStep = sequenceBreakItem[currentStep];
return `S${currentStep.split(" ")[1]} -> S${nextStep.split(" ")[1]}`
})
}
但請考慮如何通過更改資料結構獲得更清潔、更簡單的解決方案。
[
{currentStep: "Step 4", nextStep: "Step 6"}
]
uj5u.com熱心網友回復:
您可以獲取數字并回傳一個新字串。
const
convert = object => Object
.entries(object)[0]
.map(s => 'S' s.match(/\d $/)).join('->'),
sequence_break = [{ "Step 4": "Step 6" }];
console.log(sequence_break.map(convert));
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/503668.html
標籤:javascript 数组 目的
下一篇:在React中比較兩個物件的資料
