2016-10-13 1 views

Antwort

2

Sie können nicht von außen auf die Funktion zugreifen, so wie Sie sie geschrieben haben. Sie können auf sie außerhalb des von der Funktion definierten Bereichs zugreifen.

Sie könnten die Variable cars außerhalb der Funktion definieren und sie dann innerhalb der Funktion setzen. Sobald die Funktion aufgerufen wurde, können Sie auf die von ihr festgelegten Werte zugreifen.

var cars; 

function initStage(){ 
    cars = { 
     car: "ford", 
     speed: 300 
    } 
} 
1

Der Umfang dieses Objekts ist die Funktion, die es in deklariert wird.

auch immer Sie den Wert zurückgeben kann.

Je nach Ihren Anforderungen könnten Sie auch einen Konstruktor erstellen und die Autos eine Eigenschaft der Instanz ablegen lassen.

function initStage(){ 
    this.cars = { 
    car: "ford", speed: 300 
    } 
} 

new initStage().cars 
0

Sie können es direkt zugreifen

function initStage(){ 
     var cars = { 
     car: "ford", speed: 300 
     } 
     console.log(cars.car); 
     } 
0

Vier mögliche Lösungen:

Rückkehr der Wert des Objekts

function getCar(){ 
    var cars = { 
      car: "ford", speed: 300 
     } 
    return cars 
} 

Damit Sie getCar verwenden können() um das Autoobjekt zu bekommen

getCar() // {car:"ford",speed:300} 

Definieren Sie das Objekt mit der Funktion (Constructor Notation)

function car(car,speed){ 
    this.car = car 
    this.speed = speed 
} 

Dann können Sie ein neues Auto wie folgt definieren:

ford = new car("Ford",200) 
ford //{car:"Ford",speed:200} 

Definieren Sie das Objekt mit Ihrer Funktion (Wörtliche Notation)

var cars; //Define cars for later access 
function setCar(){ 
    cars = { 
      car: "ford", speed: 300 
     } 
} 

Und dann können Sie die Variable Autos verwenden die Autos

cars // {car:"ford",speed:300} 

der Funktionen loswerden und verwenden nur wörtlichen Notation

var cars = { 
    car: "ford", speed: 300 
    } 

Welche Sie mit

können dann auf das Objekt zu erhalten
cars //{car:"ford",speed:300} 

All dies sind praktikable Optionen, die viele Möglichkeiten zu erreichen die gleiche Aufgabe. Ich empfehle das letzte, da es das einfachste ist.

Verwandte Themen