dcsimg
www.webdeveloper.com
Results 1 to 4 of 4

Thread: newArray.push is not a function????

  1. #1
    Join Date
    Oct 2004
    Posts
    6

    newArray.push is not a function????

    In order to match up and resort items between two arrays and come up with a new array,I wrote the following code. y is a subset of x: x being the array that has the sorting order I want to emulate and y being the array that has the items that I want in the new array:

    function createArray (x,y) {
    var newArray = new Array();
    var thisStr = y.join();
    var thisReg;
    var chckitem;

    for(i=0;i<x.length;i++){
    chckitem = x[i];
    thisReg = new RegExp(chckitem);
    if (thisReg.test(thisStr)) {
    newArray.push(chckitem);
    }
    }
    return newArray;

    This works great as long as there are no items in x that may be a substring of items in y (oops!)...

    So, in order to fix this problem (thanks to KOR for pointing out the solution) I used code as such:

    function createArray (x,y) {
    var newArray = new Array();
    var chckitem;
    for(i=0;i<x.length;i++){
    chckitem=x[i];
    for(f=0;f<y.length;f++) {
    if(y[f]==chckitem){
    newArray.push(chckitem);
    }
    }
    }
    return newArray;
    }

    Now, however, whenever I call this function, I get 'newArray.push is not a function'.

    WHat's up?

  2. #2
    Join Date
    Jul 2003
    Location
    Wales
    Posts
    1,382
    The code seemed to work fine for me. I just ran a test and it returned a value with no error.


    RyanJ

  3. #3
    Join Date
    Oct 2004
    Posts
    6
    Originally posted by sciguyryan
    The code seemed to work fune for me. I just ran a test and it returned a value with no error.
    arrgh. that figures. As I haven't changed anything (such as when and where the function is called) except the function that means I must have some weird conflict going on with the new code.....

  4. #4
    Join Date
    Jul 2003
    Location
    Wales
    Posts
    1,382
    Originally posted by suegriff
    arrgh. that figures. As I haven't changed anything (such as when and where the function is called) except the function that means I must have some weird conflict going on with the new code.....

    Sounds like a reasonable conclusion.

    RyanJ

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
HTML5 Development Center



Recent Articles