es6如何导出本机对象

es6 how to export native object

本文关键字:对象 本机 何导出 es6      更新时间:2023-09-26

我想用一个新函数扩展js本机对象,然后导出该函数,我尝试了类似的方法

export Object.prototype.renameProperty = function () {
    console.log('do stuff') 
}

我得到了意外的令牌错误。做这件事的正确方法是什么?

在ES6+中使用模块的全部意义在于,您不需要修改您不拥有的对象的原型。但是,如果必须以这种方式编写,则需要在不导出的情况下在文件中声明代码:

原型.js

Object.prototype.renameProperty = function () {
    console.log('do stuff') 
}

并像这样导入:

import "./prototype.js";

或者,如果你真的需要将其添加到原型中并导出,那么:

原型.js

export const renameProperty = Object.prototype.renameProperty = function () {
    console.log('do stuff') 
};

并像这样导入:

import {renameProperty} from "./prototype.js";
({}).renameProperty(); // do stuff
renameProperty.bind({})(); // do stuff