当前位置: 首页 > news >正文

义乌哪里有学做网站的互联网品牌宣传推广服务公司

义乌哪里有学做网站的,互联网品牌宣传推广服务公司,合肥设计公司排名,山东做网站建设公司哪家好​ es6 数据类型 map 数据类型 >Map 对象保存键值对。 用途 : Object的key无法支持该数据时需要了解对象大小时 map 数据类型任何值(对象或者原始值) 都可以作为一个键。 Object 的键只能是字符串 let myMap new Map(); let myMap1 new Map(); var keyStrin…

es6 数据类型

map 数据类型 ===>Map 对象保存键值对。

用途 :

  • Object的key无法支持该数据时
  • 需要了解对象大小时
  • map 数据类型任何值(对象或者原始值) 都可以作为一个键。 Object 的键只能是字符串
let myMap = new Map();
let myMap1 = new Map();
var keyString = 'a string';
var keyObj = { a: 1 };
myMap.set(keyString, "和键'a string'关联的值");
myMap1.set(keyObj, '和键 keyObj 关联的值');
console.log(myMap1.get(keyObj)); //和键 keyObj 关联的值
console.log(myMap); //Map {'a string' => "和键'a string'关联的值"}
console.log(myMap1); //Map {'a string' => "和键'a string'关联的值"}
console.log(myMap1.size); //1
  • 键值对个数可以从 size 属性获取, Object 的键值对个数只能手动计算。

    //map对象遍历 for of
    for (const [key, value] of myMap1) {console.log(key + ' = ' + value); //[object Object] = 和键 keyObj 关联的值
    }
    
  • map 对象转 Array array 转 map

    var kvArray = [['key1', 'value1'],['key2', 'value2'],
    ];
    var myMap2 = new Map(kvArray);
    var myMap3 = new Map(myMap2); //克隆
    console.log(myMap2); //Map(2) {'key1' => 'value1', 'key2' => 'value2'}
    console.log(Array.from(myMap2)); //[["key1", "value1"], ["key2", "value2"]]
    console.log(myMap2 === myMap3); //false
    
Set 对象
  • 存储任何类型的唯一值,无论是原始值或者是对象引用。
let mySet = new Set();
mySet.add(1);
mySet.add('some text');
mySet.add({ name: 'xx' });
console.log(mySet); //Set(3) {1, 'some text', {name:xx}}
  • 数组转 set 类型 —>用途进行数组去重
console.log(new Set([['key1', 'value1'],['key2', 'value2'],['key2', 'value2'],])
); // Set(3) {Array(2), Array(2), Array(2)}
console.log(new Set(['value1', 'value2', 'value2'])); //{'value1', 'value2'}
  • set 转 Array 扩展运算符
console.log([...new Set(['value1', 'value2', 'value2'])]); //['value1', 'value2']
Symbol 原始数据类型 表示独一无二的值

在之前,对象的键以字符串的形式存在,所以极易引发键名冲突,Symbol 最大的用法是用来定义对象的唯一属性名,为了解决属性名冲突的问题,模拟私有属性

  • 我们在不了解一个对象的时候,想为其添加一个方法或者属性,又怕键名重复引起覆盖的问题,而这个时候我们就需要一个唯一性的键来解决这个问题
  • 没有完全相等的 Symbol
//使用Symbol("a")直接创建,所以该Symbol("a")不在全局注册表中
let obj = {a: 1,b: 2,
};
let a = Symbol('a');
let b = Symbol('a');
obj[a] = 3;
console.log(obj); //{a: 1, b: 2, Symbol(a): 3}
console.log(obj[a]); //3
console.log(b); //Symbol(a)
console.log(a === b); //false
  • 全局共享 Symbol
    //通过 Symbol.for()方法,参数为创建时传入的描述字符串,该方法可以遍历全局注册表中的的 Symbol,如果没有搜索到,就会创建一个新的 Symbol。
    let c = Symbol.for(1)
    let d = Symbol.for('c')
    console.log(c===d) //true
    

http://www.tj-hxxt.cn/news/110767.html

相关文章:

  • 潼南国外免费自助建站对网络营销的认识800字
  • 做知乎网站的图片东莞优化排名公司
  • 星空传媒有限公司网站合肥seo网络优化公司
  • 神箭手wordpress免费吗电脑优化软件排行榜
  • 网站构建的工作十大app开发公司排名
  • wordpress生成小程序seo整站优化方案
  • 2015年友情链接网站源代码下载推广赚钱软件
  • 相亲网与做网站杭州网站seo推广
  • wordpress国外模板站长工具seo推广 站长工具查询
  • wordpress适合做什么网站广州网络推广公司排名
  • 郑州疫情到底有多严重seo整站优化推广
  • 清远专业网站建设服务seo营销推广
  • 临沂手机网站开发制作公司seo排名技巧
  • 成都网站设计 冠辰五行seo博客
  • wordpress好处聊城网站seo
  • 免费b站网页推广新媒体运营培训班
  • 哪个网站的域名到期直接注册表网络营销推广的优势
  • 商务网站推广技巧包括什么网站开发的基本流程
  • 河北手机网站制作哪家好长沙建设网站制作
  • 苏州 网站设计 知名千锋教育学费
  • 网站懒加载怎么做广告发布
  • 网站建设代理政策制作网站需要什么
  • 百度搜索网站怎么做中国十大网络营销平台
  • 手机网站怎么做吉安seo网站快速排名
  • 网站建设电话网站推广怎么推广
  • 快速优化seo软件推广方法seo推广怎么入门
  • 网站前端开发培训西安快速提高排名
  • 阿里巴巴做网站营销有没有用网站怎么被百度收录
  • 海南网站建设网站开发小程序app项目网
  • 好看的食品网站seo网址