我有这段代码。我想知道的是,对此是否有更优雅的解决方案。
/**
* Formats serial from '86FC64484BE99E78' to '86:FC:64:48:4B:E9:9E:78'
* @param serial
*/
private formatSerial(serial: string): string {
return serial.split('').reduce(
(prev, curr, index, arr) => {
let part = prev + curr;
if ((index % 2 === 1) && (index !== arr.length - 1)) {
part += ':';
}
return part;
},
'',
);
}
答案 0 :(得分:1)
尝试下面的代码或查看实时演示https://stackblitz.com/edit/angular-zcb8kw
private formatSerial(serial: string): string {
return serial.match(/.{1,2}/g).join(':')
}
答案 1 :(得分:1)
您可以使用以下解决方案:
formatSerial($serial){
return $serial.match(/.{1,2}/g).join(':');
}