美文网首页
(二)13.Symbol语法19-08-09

(二)13.Symbol语法19-08-09

作者: 你坤儿姐 | 来源:发表于2019-08-09 15:40 被阅读0次
WechatIMG75.png
  • Symbol的概念
    这种数据类型提供一个独一无二的值
    用这种方式生命的数据变量永远都不会相等,保证它们是唯一的独一无二的
{
  //声明
  let a1=Symbol();
  let a2=Symbol();
  console.log(a1===a2);

  let a3=Symbol.for('a3');
  //这里'a3'相当于一个key值,使用Symbol.for的时候首先查找这个是否定义过,如果定义过就直接取出使用
  let a4=Symbol.for('a3');
  console.log(a3===a4);
}

打印结果:
false
true

{
  let a1=Symbol.for('abc');
  let obj={
    [a1]:'123',
    'abc':345,
    'c':456
  };
  console.log('obj',obj);

 //使用常规的for in和let of是取不到Symbol属性的
  for (let[key,value] of Object.entries(obj)){
    console.log('let of',key,value);
  }

  //这是需要使用getOwnPropertySymbols()
  //forEach()是数组的方法
  Object.getOwnPropertySymbols(obj).forEach(function (item) {
    console.log(obj[item]);//这时就能拿到Symbol属性的值了
})
  //getOwnPropertySymbols()只能拿到Symbol属性的值
  //这里要拿到所有的的值需要使用 Reflect.ownKeys这个属性
  Reflect.ownKeys(obj).forEach(function (item) {
    console.log('ownkeys',item,obj[item]);
  })

}

打印结果:
obj {abc: 345, c: 456, Symbol(abc): "123"}

let of abc 345
let of c 456

123

ownkeys abc 345
ownkeys c 456
ownkeys Symbol(abc) 123

  • Symbol的作用

相关文章

  • (二)13.Symbol语法19-08-09

    Symbol的概念这种数据类型提供一个独一无二的值用这种方式生命的数据变量永远都不会相等,保证它们是唯一的独一无二...

  • (二)12.对象扩展19-08-09

    简洁表示法 打印结果:{o: 1, k: 2}k: 2o: 1__proto__: Object{o: 1, k:...

  • RxJava2.X版本-Distinct和Filter

    一、distinct语法 日志 二、Filter语法 日志

  • 19-08-09小心念

    昨晚贪看《陈情令》,一晚上书都没看,看着看着就觉得,俩男主好有感啊!于是百度原书类型,果真同人,嘿嘿!挺好看,准备...

  • Javascript流程控制语句

    一、Javascript条件语句 1.if语句 语法一: 语法二: 语法三: 2.prompt() 语法:prom...

  • VIM编辑器

    一:语法高亮 syntax on(设置语法高亮) syntax off(关闭语法高亮) 二:显示行号 set ...

  • Markdown基本语法

    一级标题 语法:#一级标题 二级标题: 语法:##二级标题 三级标题: 语法:###三级标题 四级标题: 语法:#...

  • Markdown语法学习

    一级标题 语法:#一级标题 二级标题 语法:##二级标题 三级标题 语法:###三级标题 四级标题 语法:####...

  • MarkDown常用语法

    一级标题 语法:#一级标题 二级标题 语法:##二级标题 三级标题 语法:###三级标题 四级标题 语法:####...

  • shell系列4-流程控制

    一. if 判断 语法1: 语法2: 语法3: 实操案例: 二. case语句 语法: 注意事项: case行尾必...

网友评论

      本文标题:(二)13.Symbol语法19-08-09

      本文链接:https://www.haomeiwen.com/subject/unhhjctx.html