2012-01-02 57 views
3

是否可以限制方法的扩展性?javascript对象可扩展性限制方法吗?

由于preventExtension()防止添加属性以及方法(因为方法也是属性)。

什么是防止进一步添加方法的唯一方法(并允许添加非方法属性)?

Object.preventExtensions(obj); 

回答

2

是否有可能限制只有方法的可扩展性?

否。语言不区分方法和数据属性。

什么是防止进一步添加方法(并允许添加非方法属性)的解决方案?

您可以始终阻止扩展,但在此之前,可以为某些属性定义setter和getter,以允许设置不可调用的值。