Javascript code>将是你的朋友。正如@JosephDreamer建议的那样,你应该使用数组。减少@约瑟夫德雷默:我不知道如何使用reduce来实现这一点,或者我只是个傻瓜。这是一个数字数组@gurvinder372I建议避免使用正则表达式,只需使用纯JS从第一个数

Javascript code>将是你的朋友。正如@JosephDreamer建议的那样,你应该使用数组。减少@约瑟夫德雷默:我不知道如何使用reduce来实现这一点,或者我只是个傻瓜。这是一个数字数组@gurvinder372I建议避免使用正则表达式,只需使用纯JS从第一个数,javascript,arrays,regex,Javascript,Arrays,Regex,code>将是你的朋友。正如@JosephDreamer建议的那样,你应该使用数组。减少@约瑟夫德雷默:我不知道如何使用reduce来实现这一点,或者我只是个傻瓜。这是一个数字数组@gurvinder372I建议避免使用正则表达式,只需使用纯JS从第一个数组构造第二个数组array.reduce将是您的朋友。正如@josephdreamer建议的,您应该使用array.reduce@JosephDreamer我不知道如何使用reduce实现这一点,或者我只是个傻瓜。请注意编辑器中的图标。您可以放


code>将是你的朋友。正如@JosephDreamer建议的那样,你应该使用
数组。减少
@约瑟夫德雷默:我不知道如何使用
reduce
来实现这一点,或者我只是个傻瓜。这是一个数字数组@gurvinder372I建议避免使用正则表达式,只需使用纯JS从第一个数组构造第二个数组
array.reduce
将是您的朋友。正如@josephdreamer建议的,您应该使用
array.reduce
@JosephDreamer我不知道如何使用
reduce
实现这一点,或者我只是个傻瓜。请注意编辑器中的
图标。您可以放置JS代码并使其可执行。请注意编辑器中的图标。你可以把你的JS代码,使其可执行
[0,0,0,0,2,7,3,3,0,0,0,0,0,0,0,0,0]
// to
[0x4,2,7,3x2,0x9]
let serialized = array.toString().replace(/((?:(\d)+,?)((?:\2+,?){2,}))/g, (m, p1, p2) => p2 + 'x' + m.replace(/,/g, '').length);

let parsed = serialized.replace(/(\d+)x(\d+),?/g, (z, p1, p2) => _.repeat(p1 + ',', +p2)).split(',');