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

渭南免费做网站如何建设提卡网站

渭南免费做网站,如何建设提卡网站,wordpress首页导航,手机号电子邮箱免费注册我们知道Set是JS的一个种新的数据结构,和数组类似,和数组不同的是它可以去重,比如存入两个1或两个"123",只有1条数据会存入成功,但有个特殊情况,如果添加到set的值是引用类型,比如数组…

我们知道Set是JS的一个种新的数据结构,和数组类似,和数组不同的是它可以去重,比如存入两个1或两个"123",只有1条数据会存入成功,但有个特殊情况,如果添加到set的值是引用类型,比如数组、对象,他将无法自动去重。因为值相同的两个引用类型地址是不一样的。下面来看一个例子:

var mySet = new Set()
mySet.add([-1,0,1])
mySet.add([-1,0,1])
mySet.add({a: 1})
mySet.add({a: 1})
mySet.size // 4
console.log(Array.from(mySet)) // [[-1, 0, 1], [-1, 0, 1], {a: 1}, {a: 1}]

我们来看看mdn上的文档描述:

Set - JavaScript | MDNThe Set object lets you store unique values of any type, whether primitive values or object references.https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set

Description

Set objects are collections of values. You can iterate through the elements of a set in insertion order. A value in the Set may only occur once; it is unique in the Set's collection.

集合对象是值的集合。您可以按插入顺序遍历集合的元素。集合中的值只能出现一次;它在集合集合中是唯一的。

Value equality

Because each value in the Set has to be unique, the value equality will be checked. In an earlier version of ECMAScript specification, this was not based on the same algorithm as the one used in the === operator. Specifically, for Sets, +0 (which is strictly equal to -0) and -0 were different values. However, this was changed in the ECMAScript 2015 specification. See "Key equality for -0 and 0" in the browser compatibility table for details. NaN and undefined can also be stored in a Set. All NaN values are equated (i.e. NaN is considered the same as NaN, even though NaN !== NaN).

由于集合中的每个值都必须是唯一的,因此将检查值是否相等。在早期版本的ECMAScript规范中,这与==运算符中使用的算法不同。具体来说,对于集,+0(严格等于-0)和-0是不同的值。然而,这在ECMAScript 2015规范中有所更改。有关详细信息,请参阅浏览器兼容性表中的“-0和0的密钥相等”。NaN和undefined也可以存储在Set中。所有NaN值都相等(即,NaN被认为与NaN相同,即使NaN!==NaN)。

我们可以简单理解为,像Set实例add数据时,每次都会进行等值判断,类似于将add的元素与每个元素进行 === 比较。因此对引用类型的去重是无效的

var stra = "test"
var strb = "test"
var a = { a : 1}
var b = { a : 1}
stra === strb // true
a === b // false 尽管他们都是对象 { a: 1 },但他们存储的地址是不一样的 

那这种情况怎么去重呢。我们可以自己写方法来处理,以数组为例子,可以将值[-1, 0, 1].join('|') 处理下,添加进去,到时统一再split出来

 

http://www.yayakq.cn/news/385709/

相关文章:

  • 公司网站 百度响应式模板网站模板下载
  • 成都哪家网站开发好做搜狗pc网站优化快速
  • 婚纱摄影网站开题报告政务服务中心网站建设
  • 图书馆新生专栏网站建设企业门户网站的作用
  • 教育机构网站源码2021年企业所得税优惠政策最新
  • 全国知名网站建设公司贵阳市公共住宅投资建设集团官方网站
  • 网站职业技能培训班成立公司在什么网站
  • 网站栏目类别是什么意思互联网营销师考试内容
  • 建设银行有招投标网站吗汉中门户网工程招标
  • 动易网站中添加邮箱问答类网站开发
  • 可以做多边形背景的网站苏州制作网站的公司哪家好
  • 专注昆明网站推广网页搜索代码
  • 富源县住房和城乡建设局网站WordPress 更改H标签
  • 佛山用户网站建设找网络公司做网站
  • 学做网站要多久wordpress文件上传位置
  • 企业网站报价单设计网站费用多少
  • 网站建设案例基本流程如何开个人网站
  • 网站服务器租用多少钱才合理呢安卓商店
  • wordpress 网站生成app新能源电动汽车价格表
  • 网站建设中的网页布局主要内容网站建设公司中心
  • 临安市建设局网站金属行业网站模板下载
  • 网站建设视觉设计扶余手机网站开发公司
  • 做企业网站收费多少工商企业网站
  • 果园网站建设网站层级关系
  • 网站开发亮点医院网站建设招标
  • 北京知名的网站建设公司wordpress iis php
  • 企业网站建设的目的论文怎样在网站上做推广
  • 公积金门户网站建设方案python 仿wordpress
  • 网站开发 思维导图wordpress自动图床
  • 校园网站建设费用建设一个网站费用