2 回答

TA貢獻1850條經驗 獲得超11個贊
您可以將過濾器與連接一起使用。序列由數組中的序列定義。將any 替換為null,可以看到它會與/ 連接在一起。
下面的片段中的示例。
[swim, bike, run].filter(item => item !== null).join('/')
swim = null
bike = null
run = 'c'
console.log('Should return c =>', [swim, bike, run].filter(item => item !== null).join('/'))
swim = 'a'
bike = null
run = 'c'
console.log('Should return a/c =>', [swim, bike, run].filter(item => item !== null).join('/'))
swim = null
bike = 'b'
run = 'c'
console.log('Should return b/c =>', [swim, bike, run].filter(item => item !== null).join('/'))
swim = 'a'
bike = 'b'
run = 'c'
console.log('Should return a/b/c =>', [swim, bike, run].filter(item => item !== null).join('/'))

TA貢獻1943條經驗 獲得超7個贊
嘗試使用這個
formatDistance(){
let distance = "";
let swim;
let bike;
let run;
swim = this.sport.swim ? this.sport.swim : null;
bike = this.sport.bike ? this.sport.bike : null;
run = this.sport.run ? this.sport.run : null;
if(swim != null)
distance = distance + swim + ' / ';
if(bike != null)
distance = distance + bike + ' / ';
if(run != null)
distance = distance + run + ' / ';
distance = distance.substring(0, distance.length - 1);
return distance;
}
我所做的是根據可用性附加值并刪除最終的值/
添加回答
舉報