function.prototype.name

中文文档
1.2.0发布于 2026/06/12MITTypeScriptCommonJS近 30 天下载 3.7亿

An ES2015 spec-compliant Function.prototype.name shim

原始使用文档
文档目录3 节
  1. Example
  2. Supported engines
  3. Tests

function.prototype.name Version Badge

dependency status dev dependency status License Downloads

npm badge

An ES2015 spec-compliant Function.prototype.name shim. Invoke its "shim" method to shim Function.prototype.name if it is unavailable. Note: Function#name requires a true ES5 environment - specifically, one with ES5 getters.

This package implements the es-shim API interface. It works in an ES5-supported environment and complies with the spec.

Most common usage:

Example

var functionName = require('function.prototype.name');
var assert = require('assert');

assert.equal(functionName(function foo() {}), 'foo');

functionName.shim();
assert.equal(function foo() {}.name, 'foo');

Supported engines

Automatically tested in every minor version of node.

Manually tested in:

  • Safari: v4 - v15 (4, 5, 5.1, 6.0.5, 6.2, 7.1, 8, 9.1.3, 10.1.2, 11.1.2, 12.1, 13.1.2, 14.1.2, 15.3, 15.6.1)
  • Chrome: v15 - v81, v83 - v106(every integer version)
    • Note: This includes Edge v80+ and Opera v15+, which matches Chrome
  • Firefox: v3, v3.6, v4 - v105 (every integer version)
    • Note: in v42 - v63, Function.prototype.toString throws on HTML element constructors, or a Proxy to a function
    • Note: in v20 - v35, HTML element constructors are not callable, despite having typeof function
  • IE: v6 - v11(every integer version
  • Opera: v11.1, v11.5, v11.6, v12.0, v12.1, v12.14, v12.15, v12.16, v15+ v15+ matches Chrome

Tests

Simply clone the repo, npm install, and run npm test

版本与发布记录

function.prototype.name 共发布 14 个版本,首次发布于 2016/02/27;过去 12 个月发布了 1 个版本。

版本发布日期距今
1.2.0latest2026/06/124 个月前
1.1.82024/12/201.9 年前
1.1.72024/12/161.9 年前
1.1.62023/08/293 年前
1.1.52021/10/035 年前
1.1.42021/02/235 年前

关于 function.prototype.name 的常见问题

function.prototype.name 是什么?

An ES2015 spec-compliant Function.prototype.name shim

如何安装 function.prototype.name?

在项目目录运行 npm install function.prototype.name,或使用 pnpm add / yarn add / bun add。

function.prototype.name 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

function.prototype.name 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

function.prototype.name 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >= 0.4。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

function.prototype.name 可以商用吗?

function.prototype.name 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

function.prototype.name 的下载量有多少?

根据 npm 官方下载统计,function.prototype.name 在 2026/10/05 – 2026/11/03 这 30 天内被下载 370,168,105 次,日均约 12,338,937 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

function.prototype.name 还在维护吗?

最新版本 1.2.0 发布于 2026/06/12(4 个月前);至今共发布 14 个版本,其中过去 12 个月发布了 1 个;首次发布于 2016/02/27。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。