函数的name属性,返回该函数的函数名。

function foo () {}
foo.name // foo
这个属性早就被浏览器广泛支持,但是直到es6,才将其写入了标准。

需要注意的是,es6对这个属性的行为做出了一些修改。如果将一个匿名函数赋值给一个变量,es5的name属性,会返回空字符串,而es6的name属性会返回实际的函数名。

var f = function() {}
// es5
f.name // ""
// es6
f.name // "f"

上面代码中,变量f等于一个匿名函数,es5和es6的name属性返回的值不一样。

如果将一个具名函数赋值给一个变量,则es5和es6的name属性都返回这个具名函数原本的名字。

const bar = function baz() {}
// es5
bar.name = 'baz'

// es6
bar.name = 'baz'
Function构造函数返回的函数实例,name属性的值为anonymous

(new Function).name // 'anonymous'
bind返回的函数,name属性值会加上bound前缀。

function foo() {}
foo.bind({}).name // "bound foo"
(function(){}).bind({}).name // "bound "

转载于:https://www.cnblogs.com/mapsxy/p/10366766.html

es6 name属性相关推荐

  1. es6 ... 添加属性_如何在10分钟内免费将HTTPS添加到您的网站,以及为什么您现在不止需要这样做......

    es6 ... 添加属性 by Ayo Isaiah 通过Ayo Isaiah 如何在10分钟内免费将HTTPS添加到您的网站,以及为什么现在比以往更需要这样做 (How to add HTTPS t ...

  2. ES6 计算属性名快速上手

    1. ES6 计算属性名 ES6 中引入了计算属性名,英文是 computed property names,它可以在对象字面量中动态计算属性名称. 我们知道添加或修改对象的属性有两种常用的方法,一种 ...

  3. es6对象属性的遍历

    ES6一共有5种方法可以遍历对象的属性. (1)for...in for...in循环遍历对象自身的和继承的可枚举属性(不含Symbol属性). (2)Object.keys(obj) Object. ...

  4. es6 prototype 属性和__proto__属性

    prototype 属性和__proto__属性 大多数浏览器的 ES5 实现之中,每一个对象都有__proto__属性,指向对应的构造函数的prototype属性.ES6 Class 作为构造函数的 ...

  5. es6 __proto__属性,Object.setPrototypeOf(),Object.getPrototypeOf()

    __proto__属性,Object.setPrototypeOf(),Object.getPrototypeOf() JavaScript 语言的对象继承是通过原型链实现的.ES6 提供了更多原型对 ...

  6. ES6——Symbol属性与for...of循环迭代器

    目录 一.认识Symbol数据类型 二.Symbol特性 三.在对象中添加Symbol属性 四.Symbol内置值 五.迭代器(for..in和for...of的对比) 六.迭代器原理 一.认识Sym ...

  7. es6对象属性的可枚举性

    对象属性的可枚举性 对象的每个属性都有一个描述对象(Descriptor),用来控制该属性的行为. Object.getOwnPropertyDescriptor方法可以获取该属性的描述对象. let ...

  8. es6 javascript属性的可枚举性

    对象的每个属性都有一个描述对象( Descriptor ),用来控制该属性的行为.Object.getOwnPropertyDescriptor方法可以获取该属性的描述对象. let obj = { ...

  9. es6 作为属性名的 Symbol

    作为属性名的 Symbol 由于每一个 Symbol 值都是不相等的,这意味着 Symbol 值可以作为标识符,用于对象的属性名,就能保证不会出现同名的属性.这对于一个对象由多个模块构成的情况非常有用 ...

最新文章

  1. 【五线谱】Sibelius 7.5.1 打谱软件安装 ( 软件下载 | 软件安装 )
  2. Python基础学习-Python中最常见括号()、[]、{}的区别 2015-08-13 07:54 by xuxiaoxiaoxiaolu, 1138 阅读, 0 评论, 收藏, 编辑 Pytho
  3. 《数据库原理与应用》(第三版)第11章 存储过程和触发器 基础 习题参考答案
  4. linux 网络协议栈变化,ZZ Linux网络协议栈学习
  5. linux下,.ko,.o , .so , .a ,.la
  6. 华为与五粮液签署战略合作协议
  7. TensorFlow AlexNet
  8. Python 中星号的本质及其使用方式
  9. 加拿大计算机硕士gpa不够,加拿大研究生留学申请者绩点低怎么办?这四类应对方法你都知道吗?...
  10. 为什么开发移动端web不使用jQuery
  11. xlswrite wps matlab,Matlab实例学习-----Matlab与Excel交互,Matlab作为自动化客户端调用Excel服务器...
  12. 单片机c语言1602怎么接线,lcd1602与单片机连接图 - lcd1602中文资料分享:lcd1602接线图_lcd1602与单片机连接图...
  13. 这8款Android桌面插件,这款 Android 应用,帮你优雅地管理桌面小部件
  14. nmf算法 python_推荐算法——非负矩阵分解(NMF)
  15. Fast is better than free: Revisiting adversarial training
  16. 【寒江雪】Go实现代理模式
  17. 黑客比程序员高在哪里?
  18. lae界面开发工具入门之介绍五--秘籍篇-杂项
  19. lpop 原子_我问我答核磁共振都能测什么原子核?
  20. Spring+SpringMVC+Mybatis(开发必备技能)04、mybatis自动生成mapper_dao_model(包含工具与视频讲解) 纯绿色版本、配套使用视频,100%运行成功

热门文章

  1. 用html和js写一个直接在页面运行js的页面
  2. Mac 技术篇-查看python安装位置,查看java安装位置
  3. 单片机编程之联合体(union)的妙用
  4. 对整个矩阵元素进行计算:最大数、最小数、排序
  5. sdut 2139BFS
  6. Implement strStr()
  7. 不允许一个迭代的对象自己接着迭代下去(Python)【fronzenset】
  8. 第五讲 一阶自治ODE
  9. 通俗讲解 RESTful
  10. Hibernate双向多对多关联