0

Im trying to split a sting variable into an array with each character in its own position in the array, but cant seem to get this to work

 function test() {
    var strString = "thisIsTheString";
    var test = @Explode(strString, "");
    var strReturn = "";

    for (var i = 0; i < @Length(test); i++) {
        strReturn += test[i] + "<br/>";
    }

    return strReturn;
}
Naveen
  • 6,786
  • 10
  • 37
  • 85
Hosea Kambonde
  • 291
  • 1
  • 4
  • 13

2 Answers2

8

The simplest way would be to use split function by passing empty string to it. For e.g.

var str = "this is a string";
var arr = str.split("");
Naveen
  • 6,786
  • 10
  • 37
  • 85
3

@Explode uses as delimiters space, comma and semicolon if second parameter is empty. That doesn't help you in your case. Just use "normal" string functions like substring():

function test() {
    var strString = "thisIsTheString";
    var strReturn = "";

    for (var i = 0; i < strString.length; i++) {
        strReturn += strString.substring(i, i+1) + "<br/>";
    }

    return strReturn;
}

In case you really need an array of characters then code would look like this:

var strString = "thisIsTheString";
var arrayReturn = new Array();
for (var i = 0; i < strString.length; i++) {
    arrayReturn[i] = strString.substring(i, i+1);
}
Knut Herrmann
  • 30,880
  • 4
  • 31
  • 67