# Eval new array from string

**URL:** <https://forum.kirupa.com/t/eval-new-array-from-string/263992>\
**Category:** flash\
**Created:** [June 21, 2008, 4:18pm UTC](https://forum.kirupa.com/t/eval-new-array-from-string/263992 "2008-06-21T16:18:17Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![dataxa](https://avatars.discourse-cdn.com/v4/letter/d/c0e974/32.png) [@dataxa](https://forum.kirupa.com/u/dataxa)\
**Post date:** [June 21, 2008, 4:18pm UTC](https://forum.kirupa.com/t/eval-new-array-from-string/263992/1 "2008-06-21T16:18:17Z")

</div>

So here is my problem:

I am passing flash a variable in string format and it looks like this

var stringVar = “new Array(new Array(1,3,4),new Array())”;

Now i need to make an array out of it. I tried this:

var stringArray = eval(stringVar);

but had no success.

Is there a way to do it? If yes, then how?

---

<div class="post-metadata">

**Author:** ![TheCanadian](https://avatars.discourse-cdn.com/v4/letter/t/67e7ee/32.png) [@TheCanadian](https://forum.kirupa.com/u/TheCanadian)\
**Post date:** [June 21, 2008, 4:35pm UTC](https://forum.kirupa.com/t/eval-new-array-from-string/263992/2 "2008-06-21T16:35:35Z")

</div>

It would be fairly simple in AS3 with regexp but in AS2 it’s going to be a lot of splitting, substringing and screwing around. You’re just gonna have to keep parsing it with the String methods until you get what you want.

---

<div class="post-metadata">

**Author:** ![dataxa](https://avatars.discourse-cdn.com/v4/letter/d/c0e974/32.png) [@dataxa](https://forum.kirupa.com/u/dataxa)\
**Post date:** [June 21, 2008, 5:15pm UTC](https://forum.kirupa.com/t/eval-new-array-from-string/263992/3 "2008-06-21T17:15:30Z")

</div>

If that would be easy, i wouldn’t be posting here :), but ok, then i know. Thanks.

---

<div class="post-metadata">

**Author:** ![TheCanadian](https://avatars.discourse-cdn.com/v4/letter/t/67e7ee/32.png) [@TheCanadian](https://forum.kirupa.com/u/TheCanadian)\
**Post date:** [June 21, 2008, 5:20pm UTC](https://forum.kirupa.com/t/eval-new-array-from-string/263992/4 "2008-06-21T17:20:22Z")

</div>

I never said it would be easy 😛

There might be someone willing to figure it out for you but I’m not. At least not right now 🙂

---

<div class="post-metadata">

**Author:** ![glosrfc](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/glosrfc/32/8334_2.png) [@glosrfc](https://forum.kirupa.com/u/glosrfc)\
**Post date:** [June 21, 2008, 6:15pm UTC](https://forum.kirupa.com/t/eval-new-array-from-string/263992/5 "2008-06-21T18:15:52Z")

</div>

```auto
var stringVar:String = "new Array(new Array(1,3,4),new Array())";
var stringArray:Array = stringVar.substring(stringVar.indexOf(",")-1,stringVar.lastIndexOf(",")-1).split(",");
for (var i = 0; i<stringArray.length; i++) {
    trace(stringArray*);
}

```

Of course, it would be a whole lot easier if you simply passed in the elements of your array rather than trying to nest all the new Array text around it first:

```auto

var stringVar:String = "1,3,4";
var stringArray:Array = stringVar.split(",");
for (var i = 0; i<stringArray.length; i++) {
    trace(stringArray*);
}

```
