You made it extremely complicated...
First of all - there is no such thing in JavaScript s fixed size array. What you can do in the context of splitting is not to exceed the maximum size...
In JavaScript split function can get the separator as RegEx (even in your case it is a simple char and for that RegEx is a waste!) and can limit the number of elements it returns...
var str = '1dsds:2dsds';
var ar = str.split(/:/, 9);
See split in JavaScript here:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/split[
^]