首页
学习
活动
专区
工具
TVP
发布

js入门(ES6)---认识Symbol、Map、 Set

认识Symbol、Map、 Set、Proxy Symbol 用法 方法 Symbol.for() Symbol.keyFor() 使用场景 Map 用法 添加/删除 迭代 合并Map Set...用法 添加/删除 由于马上要考研了所以更新慢且有点水 Symbol 表示独一无二的值 用法 let test = Symbol(“test”); 控制台打印结果为 ?...方法 Symbol.for() 输入一个字符串 在全局搜索被登记的 Symbol是否存在,如果不存在就登记输入的字符串。 ? ?...Symbol.keyFor() 输入一个字符串 返回一个已登记的名字为该字符串的Symbol类型的值 ,可以检测该Symbol 值是否已被登 如果没有 ? ? 如果有 ? ?...后续会推出 每个平台的详细搭建过程 前端:js入门 vue入门 vue开发小程序 等 后端: java入门 springboot入门等 服务器:mysql入门 服务器简单指令 云服务器运行项目

1.7K30
您找到你想要的搜索结果了吗?
是的
没有找到

ES6 Symbol

ES6(ECMAScript 2015)中,引入了一种新的原始数据类型,称为SymbolSymbol表示一个独一无二的标识符,它可以用作对象属性的键。Symbol具有唯一性,不会与其他任何值相等。...创建Symbol:可以使用Symbol()函数来创建一个Symbol。...通过typeof操作符可以验证symbol的类型为"symbol"。Symbol的唯一性:每个通过Symbol()函数创建的Symbol都是唯一的,不会与其他任何值相等,包括其他的Symbol。...示例:// Symbol的唯一性let symbol1 = Symbol();let symbol2 = Symbol();console.log(symbol1 === symbol2); // 输出...通过调用toString()方法,我们可以获取该Symbol的描述符。内置的Symbol值:ES6提供了一些内置的Symbol值,可以在特定场景中使用。

29950

ES6symbol

Symbol引入 所以为了保证变量的唯一性,ES6在原本的6中基础数据类型(Undefined、Null、Boolean、String、Number、Object)下中引入了Symbol类型,它是独一无二的...SymbolSymbol值通过Symbol函数生成,由于生成的值是一个原始类型,不是对象,所以不能使用new关键字,否则会报错。Symbol值是唯一的,不会和其他属性名产生冲突。...var symbol1 = Symbol(); var symbol2 = Symbol(); console.log(typeof symbol1); // symbol symbol1 ==...console.log(s1 + symbol); Symbol参数 Symbol函数可以接受一个字符串作为参数,表示对这个Symbol值的描述。...), Symbol(s2)] Symbol.for()和Symbol.keyFor() 如果想获取同一个Symbol值,我们可以给Symbol.for()中传递一个字符串参数。

49940

ES6入门之Symbol

ES6引入了一种新的原始数据类型 Symbol,表示独一无二的值,它是Javascript语言的第七种数据类型。...Symbol值通过 Symbol函数生成,对象的属性名现在可以有两种类型,一种是原有的字符串,另一种就是新增的Symbol类型。...Symbol类型是独一无二的不会和其他属性名产生冲突 let s = Symbol() typeof s // 'Symbol' 注意: Symbol 函数前不能用 new命令,否则会报错。...Symbol(abc) // 注意:Symbol函数的参数只是表示对当前Symbol值的描述, 因此相同参数的Symbol函数的返回值不同 let s1 = Symbol() let s2 = Symbol...ES6入门系列 ES6入门之let、cont ES6入门之解构赋值 ES6入门之字符串的扩展 ES6入门之正则的扩展 ES6入门之数值的扩展 ES6入门之对象的扩展 ES6入门之对象的新增方法

27830

es6(四):Symbol,Set,Map

1.SymbolSymbol中文意思“象征” Symbol:这是一种新的原始类型的值,表示独一无二的值(可以保证不与其它属性名冲突) Symbol()函数前面不能使用new,因为生成的Symbol(...下面指s)是一个原始类型的值,不是对象 1 let s=Symbol() 2 console.log(typeof s)//symbol Symbol可以接受一个字符串作为参数,作为对Symbol...的描述 1 let s1=Symbol('s1') 2 let s2=Symbol('s1') 3 //Symbol是独一无二的值,所以进行比较返回的永远是false 4 console.log...(s1===s2) Symbol的主要运用场景之一是对象属性名不会产生覆盖 1 let name1=Symbol() 2 let obj={ 3 name1:'apple',//此处...,obj['name1'],obj[name1])//前面两种是获取apple写法,后面是获取Symbol(即blue)的写法 2.Set:新的数据结构,类似数组,但是成员的值是唯一的(所以可以用来去重

53660

ES6新增数据类型symbol

ES6新增一种数据类型symbol,此数据类型主要防止相同的属性名多次使用被覆盖问题!...JavaScript的7种数据类型.     1.string     2.number     3.null     4.undefined     5.object     6.boolean     7.symbol...    //symbol对象永远不相等,解决属性名相同的问题 简单看一下symbol()类型防止属性名相同的例子        //声明一个cars空对象         var cars={} ...         //声明name是一个Symbol类型               let name=Symbol();         //给初始的symbol类型的name一个默认值         ...的值 总结:symbol数据类型解决局部对象属性的值,用于临时且局部更改对象的属性 并不会更改对象原始属性的值!

38120
领券