摘要:是新增的数据类型,它提供独一无二的值声明,声明的变量是唯一的接收一个参数,作为值使用方法时,会检查这个值在全局是否注册如果注册过就返回这个值,否则调用生成新的独一无二的值在对象中声明类型的属性的遍历或者循环拿不到以作为属性的值只拿到以作为属
1.Symbol是ES6新增的数据类型,它提供独一无二的值
{ // 声明,Symbol声明的变量是唯一的 let a1 = Symbol(); let a2 = Symbol(); console.log(a1 === a2); // false // Symbol.for()接收一个参数,作为key值 // 使用for方法时,会检查这个key值在全局是否注册 // 如果注册过就返回这个值,否则调用Symbol生成新的独一无二的值 let a3 = Symbol.for("a3"); let a4 = Symbol.for("a3"); console.log(a3 === a4); // true }
2.在对象中声明Symbol类型的属性
{ let a1 = Symbol.for("abc"); let obj = { [a1]: "123", "abc": "345", "df": "456", }; console.log(obj); // {abc: "345", df: "456", Symbol(abc): "123"} }
3.Symbol的遍历
{ let a1 = Symbol.for("abc"); let obj = { [a1]: "123", "abc": 345, "df": 456, }; // let of(或者for in)循环拿不到 以Symbol作为属性的值 for (let key of Object.keys(obj)) { console.log(key); // abc df } // 只拿到以Symbol作为属性的值,getOwnPropertySymbols返回一个数组 Object.getOwnPropertySymbols(obj).forEach(function (item) { console.log(obj[item]); // 123 }); // 对象全部属性和值都拿到,包括Symbol。Reflect.ownKeys返回一个数组 Reflect.ownKeys(obj).forEach(function (item) { console.log(item, obj[item]); // abc 345 df 456 Symbol(abc) "123" }); }
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/98663.html
摘要:方法返回一个布尔值,表示某个数组是否包含给定的值,与字符串的方法类似。不可以当作构造函数,也就是说,不可以使用命令,否则会抛出一个错误。本身是一个构造函数,用来生成数据结构。返回一个布尔值,表示该值是否为的成员。清除所有成员,没有返回值。 在学习es6的过程中,为了方便自己复习,以及查看,对api做了一个极简用例介绍。如有错误多多指正。 一 let和const 1.let (1)一个大...
摘要:循环遍历对象自身的和继承的可枚举属性不含属性。返回一个数组,包含对象自身的所有属性的键名。目前,只有对象方法的简写法可以让引擎确认,定义的是对象的方法。showImg(https://user-gold-cdn.xitu.io/2019/5/21/16ada8456223b0e1); 1. 属性的简洁表示法 在ES6中 允许直接写入变量和函数,作为对象的属性和方法,使得代码的书写更为简洁。...
摘要:属性的简洁表示法在中允许直接写入变量和函数,作为对象的属性和方法,使得代码的书写更为简洁。循环遍历对象自身的和继承的可枚举属性不含属性。返回一个数组,包含对象自身的所有属性的键名。 showImg(https://segmentfault.com/img/remote/1460000019259004?w=1282&h=1920); 1. 属性的简洁表示法 在ES6中 允许直接写入变量...
showImg(https://user-gold-cdn.xitu.io/2019/5/22/16adcec448a45d82); 1. Object.is() 用来解决在ES5中 两种相等运算符的缺点。用来比较两个值是否严格相等,行为和(===)基本一致。 在ES5中判断两个值是否相等,只能用(==)相等运算符和(===)严格相等运算符,但是这两货都有缺点,前者 两边的值都会转换数据类型,...
阅读 3245·2023-04-26 01:31
阅读 1891·2023-04-25 22:08
阅读 3429·2021-09-01 11:42
阅读 2822·2019-08-30 12:58
阅读 2164·2019-08-29 18:31
阅读 2428·2019-08-29 17:18
阅读 3063·2019-08-29 13:01
阅读 2550·2019-08-28 18:22