Jin*_*Lei 8 javascript prototype function
javascript中的内置函数(例如Object.keys)没有"原型"属性.
Object.keys.prototype === undefined; // returns true
Array.prototype.slice.prototype === undefined; // returns true
Run Code Online (Sandbox Code Playgroud)
然而,无论是function(){...}或new Function()将生成的原型(对象的实例)沿一个构造(功能的实例).是不是太贵了?
有可能在javascript中创建纯函数而不是构造函数吗?
问题是“‘创造’它们意味着什么”?
出于所有意图和目的,
function myFunc ( ) { }
myFunc.constructor = undefined;
myFunc.prototype = undefined;
Run Code Online (Sandbox Code Playgroud)
从实际的角度来看,会给你带来你想要的。
在 ES6 中,lambda 不应该与其他函数有任何联系;
(() => { }).prototype === undefined; // I believe this should be 100% true
Run Code Online (Sandbox Code Playgroud)
...您的另一个问题......为每个函数创建添加的函数/对象是否太昂贵...
....好吧,有些游戏可以在浏览器上愉快地运行。如今,谈论创建功能所消耗的内存通常小得不可估量(尽管物联网/可穿戴设备将是一个问题)。
这是一个过早的微观优化。