2017-07-11 4 views
-3

Hier ist der Code:Wie JS in mehrdimensionalen Arrays finden

var messages = [ 'one' , [ 'two' , 'three' ] , [ 'four' , 'five' ] , 'six' ]; 

console.log(messages[0]); 

es wird log = "Eins"

und wenn:

console.log(messages[1]); 

= "zwei, drei" .

Wie nur Element "drei" protokollieren?

+0

Versuchen 'console.log (Nachrichten [1] [1]); 'um auf das Element vom inneren Array zuzugreifen. – jxmorris12

+0

console.log (Nachricht [1] [1]); ¿ –

+0

Danke, habe nicht darüber nachgedacht: / –

Antwort

0

Sie können eine rekursive Funktion für einen Wert aus einem verschachtelten Array verwenden.

Schritt 1:

$npm i -S lodash 

Schritt 2: Funktion den Wert zu erhalten (ich benutze ES6 Notation)

var _ = require('lodash') 
var getval = (arr)=>{ 
    for(var k in arr) { 
     if(_.isArray(arr[k])) { 
      arr[k] = getval(arr[k]) 
     } 
     else if(arr[k] == 'three') //can check for any value you wish. 
      console.log(arr[k]) 
    } 
    return arr 
} 
getval([ 'one' , [ 'two' , 'three' ] , [ 'four' , 'five' ] , 'six' ]) 
Verwandte Themen