javascript - 在声明中设置两个属性相等

标签 javascript jquery object

我想在一个对象中设置两个彼此相等的属性。这是一个例子:

var obj = { // I want to do something like this
    a: function() { ... },
    b: alert,
    c: a
};

显然那是行不通的,我必须这样做:

var obj = {
    a: function() { ... },
    b: alert,
};
obj.c = obj.a;

有没有办法在声明中做到这一点?

最佳答案

var obj = { 
    a: function() { alert("hello")},
    b: alert,
    c: function(){return this.a()}
};

obj.c();

正如 SLaks 所提到的,如果函数具有属性(例如,原型(prototype)或 arguments.callee),这将不起作用。

关于javascript - 在声明中设置两个属性相等,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5972105/

相关文章:

javascript - 如何在外部回调后在 require.js 中初始化你的主干应用程序

javascript - JS 和 css 中的标签计数器递增

javascript - React 在第一个方法触发后不改变状态

javascript - Promise.resolve() 但对于 Observables (RxJS5)

javascript - 如何使用 jquery 创建带导航按钮的幻灯片

jquery - Javascript - 在不移动周围元素的情况下更改边框宽度。

jquery - 导航栏淡入淡出

python - 如何知道变量是否在列表中对象的属性中?

javascript - 未捕获的类型错误 : Object `function()` has no method 'call' ?

javascript - 循环遍历 Javascript 中的嵌套对象