function subStringArray(string) { let x = string.split('0').length - 1 let y = string.split('1').length - 1 let length = x > y ? y : x var subArray = [] for (var i = 1; i <= length; i++) { subArray.push('0'.repeat(i) + '1'.repeat(i)) subArray.push('1'.repeat(i) + '0'.repeat(i)) } var result = [] subArray.map(item => { let count = string.split(item).length if (count > 1) { for (var i = 1; i < count; i++) { result.push(item) } } }) return result; }