2017-03-26 6 views
-5
var sunny=[1,2,3]; 
var bunny=[4,5,6]; 
var name=prompt("Enter Name"); 

for(var i=0;i<3;i++) 
{ 
    document.write(name[i]); 
} 
//If User input Sunny then array elements of sunny will be printed. 
+0

Und was ist, wenn der Benutzer weder "sonnig" noch "Hase" eingibt? – nnnnnn

+0

Keine der Antworten hier hat eine Lösung. Wahrscheinlich, weil qualitativ minderwertige Fragen qualitativ minderwertige Antworten anlocken (und der Benutzer wählt die eine "eval" wie überraschend) –

+0

Weil ich diesen Code auf https://drive.google.com/open?id=0Bxq5hYau2MywOHd0elM3dFZzQlk dies und das implementieren möchte hilft mir, das Ding perfekt zu machen. Und für deine freundlichen Informationen ist das meine erste Frage zu Stackoverflow. –

Antwort

-3

U kann dies erreichen, indem er 'eval' verwenden.

Siehe den Aktualisierungscode.

var sunny=[1,2,3]; 
var bunny=[4,5,6]; 
var name=prompt("Enter Name"); 

for(var i=0;i<3;i++) 
{ 
    document.write(eval(name)[i]); 
} 
+1

eval ist böse ... – Gerrit

+0

Problem gelöst wegen You.Thanks –

+0

Awesome! Würde es Ihnen etwas ausmachen, dies als die akzeptierte Antwort zu markieren? – Stanly

-3

Sie eine Switch-Anweisung verwenden (https://www.w3schools.com/js/js_switch.asp) wie

var a; 
switch(name) { 
    case "sunny": 
    a = sunny; 
    break; 
    case "bunny": 
    a = bunny; 
    break; 
} 

for(var i = 0; i < a.length; i++) { 
    document.write(a[i]); 
} 
+0

funktioniert nicht

+0

Bitte geben Sie eine Fehlermeldung an. – Gerrit

+0

Problem gelöst mit Eval. –

0

Ich denke, was Sie wollen, ist ein Objekt zu verwenden:

const names = { 
    sunny:[1,2,3], 
    bunny:[4,5,6], 
}; 

const name=prompt("Enter Name"); 

for(var i=0;i<3;i++) 
{ 
    document.write(names[name][i]); 
} 

Es gibt nicht sauber Weg, um eine Variable zu erhalten, wenn Sie seinen Namen als Zeichenfolge haben. Es ist jedoch einfach, auf eine Objekteigenschaft mit einer Zeichenfolge mit der []-Syntax zuzugreifen.

+2

* "Beachten Sie auch, dass Javascript keine Entsprechung der Eingabeaufforderung hat" * - Ähm ... was ist mit der ['window.prompt()' Methode] (https://developer.mozilla.org/en/docs/Web/API/Window/prompt), die als 'prompt()' ohne den 'window.'-Teil aufgerufen werden kann. – nnnnnn

1

Sie können Objekt für users verwenden und Ihre Benutzer darin schreiben, Beispiel:

var users = { 
 
    sunny: [1,2,3], 
 
    bunny: [4,5,6] 
 
} 
 
var name = prompt("Enter Name"); 
 
console.log(users[name]); 
 

 
//If User input Sunny then array elements of sunny will be printed.