Beiträge von Simay

    Hi Leute,

    Habe ein Problem mit der Array.isArray Funktion.

    Und zwar will ich ein Mehrdimensionales oder Mehrschichtiges Array zu einem machen. Da ich aber nicht weiß wie viele Dimensionen das Array hat, gucke ich in jedes Element ob es ein Array bzw ein Objekt hat oder eins ist mit Array.isArray. Jedoch gibt es immer false zurück:cursing::cursing: obwohl es eigentlich true sein sollte. Die Rekursivefunktion ist erstmal Zweitrangig.

    Danke im Vorraus:):).



    Die While-Schleife ist drin wei lich sonst eine Endlosschleife habe


    Code:


    var a=[0,1,2,

    [4,5,[8,9]

    ],

    [5,3,9],

    4,8,1];

    var i=0;

    function rekDim(){

    var endArray=[];

    while(i<30){

    if(Array.isArray(a[i])){

    console.log("true");

    endArray=endArray.concat(a[i]);

    i++;

    console.log("i"+i);

    rekDim();

    }

    console.log(endArray);

    return endArray;

    }

    console.log(endArray);

    }


    function machWas(){

    i=0;

    rekDim();

    }

    Hi Leute,

    Ich hab ein Problem undzwar soll ich in einem Array mit mehren Objekten welche herausfiltern. Als string mit endsWith() klappt das auch ganz gut. Es sollen aber auch die Objekte gefilter werden die nur ein / im Path haben und somit dann in ein neues Array geschrieben werden. Da dachte ich an folgende Lösung. Aufgabe ist also zuerst nach .config zu filtern und dann nach einer datei die nur ein / hat oder anderst rum das ist eigentlich egal.

    hier mal der ganze Code;



    let items = [

    {

    fileName: 'test.zip',

    path: 'HPCWebAccessService/Test/test.zip',

    },

    {

    fileName: 'test.doc',

    path: 'HPCWebAccessService/Test/test.doc',

    },

    {

    fileName: 'test1.config',

    path: 'HPCWebAccessService/test1.config',

    },

    {

    fileName: 'test2.config',

    path: 'HPCWebAccessService/Test/test2.config',

    }

    ];

    // Result we want to get

    let resultToGet = [

    {

    fileName: 'test1.config',

    path: 'HPCWebAccessService/test1.config',

    }

    ];


    function selectConfg(item)

    {

    var element= '.config';

    return item.fileName.endsWith(element);

    }

    function selectSlash(item)

    {

    let count=0;

    let name= resultt.path.toString();

    let pos = name.indexOf('/');

    console.log('hallo');

    while(pos!=-1){

    console.log('hallo2');

    count++;

    console.log(count);

    }

    if(count==1){

    console.log('Hallo3');

    console.log(count);

    return true;

    }else if(count >1){

    console.log('Hallo4');

    return false;

    }

    }

    let resultt = items.filter(selectConfg);

    let result= resultt.filter(selectSlash);

    //TODO: Filter array

    console.log(result);


    Fehler im Compilier

    TypeError: Cannot read property 'toString' of undefined at selectSlash:36:27 at Array.filter at eval:54:22 at eval


    Danke für eure Hilfe im Vorrraus