在ES2015严格模式下为数字添加道具

时间:2017-05-26 13:35:50

标签: javascript

我希望能够做类似以下的事情

console.log(a, typeof a); // prints "3 'number'"
console.log(typeof a.mymethod()); // prints  'foobar'

在非严格模式下,这是可能的(至少在Node中),但ECMAScript 2015中的严格模式禁止在原始值(source)上设置属性。

我有什么方法可以假装这个,比如使用Proxy或属性描述符,或类似的东西?

1 个答案:

答案 0 :(得分:0)

以下设置为使用ES2015 /严格模式,似乎可以解决问题:

'use strict';

var a = 3;
Number.prototype.mymethod = function() { alert("foobar") };

a.mymethod();