[英]How do I access the object inside this function?
我想在这个函数中访问汽车对象的属性?
function initStage(){
var cars = {
car: "ford", speed: 300
} }
您无法按照您编写的方式从函数外部访问它,那将是在函数定义的范围之外访问它。
您可以在函数外部定义变量cars
,然后在函数内部设置它。 然后,一旦调用该函数,您就可以访问它设置的值。
var cars;
function initStage(){
cars = {
car: "ford",
speed: 300
}
}
该对象的范围是声明它的函数。
但是,您可以返回该值。
function initStage(){
var cars = {
car: "ford", speed: 300
}
return cars;
}
var initCars = initStage();
根据您的要求,您还可以将其设为构造函数并使汽车对象成为实例的属性。
function initStage(){
this.cars = {
car: "ford", speed: 300
}
}
new initStage().cars
您可以直接访问它
function initStage(){
var cars = {
car: "ford", speed: 300
}
console.log(cars.car);
}
四种可能的解决方案:
返回对象的值
function getCar(){
var cars = {
car: "ford", speed: 300
}
return cars
}
这样你就可以使用 getCar() 来获取汽车对象
getCar() // {car:"ford",speed:300}
使用您的函数定义对象(构造函数表示法)
function car(car,speed){
this.car = car
this.speed = speed
}
然后你可以像这样定义一辆新车:
ford = new car("Ford",200)
ford //{car:"Ford",speed:200}
用您的函数定义对象(文字符号)
var cars; //Define cars for later access
function setCar(){
cars = {
car: "ford", speed: 300
}
}
然后你可以使用变量cars来获取cars对象
cars // {car:"ford",speed:300}
摆脱函数,只使用文字符号
var cars = {
car: "ford", speed: 300
}
然后您可以访问
cars //{car:"ford",speed:300}
所有这些都是可行的选择,允许通过多种方式来完成相同的任务。 我推荐最后一个,因为它最简单。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.