标签:返回 通用 函数 符号 对象 Symbol JS 属性
instanceof
在原型链上寻找这个属性的定义
match
正则匹配字符串
Symbol()
Symbol()函数不能用作构造函数,与new关键字一起使用。这样做是为了避免创建符号包装对象,像使用Boolean、String、Number那样,他们都支持构造函数且可用于初始化原始值的包装对象
Symbol.for()
在全局符号注册表中创建并重用符号
Symbol.keyFor()
查询全局注册表
Object.getOwnPropertyNames() | Object.getOwnPropertySymbols() | Object.getOwnPropertyDescriptors() |
---|---|---|
返回对象实例的常规属性数组 | 返回对象实例的符号属性数组 | 同时返回常规和符号属性描述的对象 |
["baz","qux"] | [Symbol(foo),Symbol(bar)] | ["baz","qux",Symbol(foo),Symbol(bar)] |
常用内置符号
这些内置符号也没有什么特别之处,他们就是全局函数Symbol的普通字符串属性,指向一个符号的实例。所有内置符号属性都是不可写、不可枚举、不可配置的。
Symbol.asyncIterator
根据ECMAScript规范,该符号作为一个属性表示一个方法,该方法返回对象默认的AsyncIterator。由for-await-of语句使用。换句话说,这个符号表示实现异步迭代器API的函数。
for-await-of循环会利用这个函数执行异步迭代操作。循环时,他们会调用Symbol.asyncIterator为键的函数,并期望这个函数会返回一个实现迭代器Api的对象。很多时候,返回的对象是实现该Api的AsyncGenerator
Symbol.replace
该函数接收两个参数,即调用replace()方法的字符串实例和替换字符串。返回的值没有限制:
Symbol.search
该符号作为一个属性表示“一个正则表达式方法,该方法返回字符中匹配正则表达式的索引。”正则表达式的原型上默认有这个函数的定义,因此所有正则表达式实例默认是这个String方法的有效参数
注:参考书籍JavaScript高级程序设计第四版
标签:返回,通用,函数,符号,对象,Symbol,JS,属性 来源: https://www.cnblogs.com/huayang1995/p/15352234.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。