是否有可能将对象初始化为具有属性的函数?
像这样的东西:
var a = {
() => {
return "I am function!";
},
prop1: "I am property in function object",
prop2: 10
}
alert(a()); // => I am function!
alert(a.prop1); // => I am property in function object
我知道我可以这样做:
var a = () => "I am function!";
a.prop1 = "I am property in function object";
a.prop2 = 10;
我只是想知道这是否可能。
不,具有属性的函数(或使对象可调用)没有字面语法。但是您可以使用Object.assign将所有内容放在一个语句中:
const a = Object.assign(() => {
return "I am function!";
}, {
prop1: "I am property in function object",
prop2: 10
});
console.log(a()); // => I am function!
console.log(a.prop1); // => I am property in function object
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)