使用多个分隔符对字符串进行解构

Bat*_*ers 0 javascript ecmascript-6

我有以下形式的文件名:

const fn = 'xy_20181023_ABCD.jpg';
Run Code Online (Sandbox Code Playgroud)

我想把它分成变量,x, y, date, data这样:

console.log({x, y, date, data});
// {
//     data: "ABCD.jpg"
//     date: "20181023"
//     x: "x"
//     y: "y"
// }
Run Code Online (Sandbox Code Playgroud)

我知道我可以这样做:

const [temp, date, data] = fn.split('_');
const [x, y] = temp[0]
Run Code Online (Sandbox Code Playgroud)

但我的问题是:是否有可能以某种方式完成任务?奖励积分,如果它仍然易于阅读.

干杯,

P

Nik*_*wal 5

试试以下

const fn = 'xy_20181023_ABCD.jpg';
const [[x,y], date, data] = fn.split('_');
console.log(x);
console.log(y);
console.log(date);
console.log(data);
Run Code Online (Sandbox Code Playgroud)