Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/427.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 对象参数是否与其他对象参数在同一对象中使用?_Javascript_Object_Properties - Fatal编程技术网

Javascript 对象参数是否与其他对象参数在同一对象中使用?

Javascript 对象参数是否与其他对象参数在同一对象中使用?,javascript,object,properties,Javascript,Object,Properties,快速简单新手问题-可以在其他对象参数中使用对象参数(但它是同一个对象) 所以当我调用obj.ab时,对象还没有准备好-知道如何处理这个问题吗? obj现在是全局对象,其余代码使用了大量obj.ab-I don;I don’我不想做重大改变,有什么简单的想法吗?您可能想简单地转换成函数ab,并通过this访问对象属性 var obj={ a:‘a’, b:‘b’, ab:()=>“我们的新参数:”+(this.obj.a+this.obj.b)+“出现了!”, 测试:()=>this.obj.a

快速简单新手问题-可以在其他对象参数中使用对象参数(但它是同一个对象)

所以当我调用obj.ab时,对象还没有准备好-知道如何处理这个问题吗?
obj现在是全局对象,其余代码使用了大量obj.ab-I don;I don’我不想做重大改变,有什么简单的想法吗?

您可能想简单地转换成函数
ab
,并通过
this
访问对象属性

var obj={
a:‘a’,
b:‘b’,
ab:()=>“我们的新参数:”+(this.obj.a+this.obj.b)+“出现了!”,
测试:()=>this.obj.ab
};
console.log(obj.ab());
console.log(obj.test());
//ab:()=>是一个箭头函数

//test:()=>也是一个箭头函数
谢谢我在最后做了类似的事情:var foo={a:a',b:b',c:function(){return foo.a+foo.b;}(),d:function(){return foo.c;}()}console.log(foo.c);//ab console.log(foo.d);//ab console.log(foo);//我们的foo对象显示了正确的值,这种方式也是正确的!不是真的。。。当我导出我的globals对象时,它不起作用,我不知道为什么。无论我使用object还是this,它都不起作用-未定义。编辑:当我在需要全局变量的文件中执行函数(方法)时,它起作用了。所以不能调用globals对象中的方法。我明白了,我建议您查看模块模式以避免这些问题。我认为这种情况更为具体。。。。我在路由(快速路由)中有globals对象,最后我需要globals对象的实例——否则应用程序无法正常工作。那么,你知道如何让globals对象的实例通过所有需要它的模块来访问吗(连接到特定的用户请求,这样每个用户都有自己的globals对象)?无论如何,谢谢你的链接!我确实在那里找到了一些指导,所以我成功地完成了我想要的,谢谢。
var obj = {
  a : 'a',
  b : 'b',
  ab : 'Our new parameter: ' + (obj.a + obj.b) + 'is presented!',
  test : obj.ab
}

console.log(obj.ab);