概览

Set

类似于数组,可是成员的值都是仅有的,没有重复的;
Set自身是一个结构函数,用来生成Set数据结构;
不能差异 +0,-0;
以为NaN不等于NaN;
不能差异政策,以为两个政策总是不相等的;
不能差异数组,以为两个数组总是不相等的数组c言语

Set的根底和数组去重

let arr = [2,3,4,5,1,'1',1,undef数组函数的使用办法ined,undefined,'javascript高档程序设计undefined',null,Njson解析ajson怎样读N,NaN,+0,-0,{},{},[],[]];
function unique(arr){
retjson怎样读urn A数据结构题库及答案rray.fromjavascript高档程序设计(new Set(arr))
}
l数据结构c言语版严蔚敏et newArr = unique(arr);jjavascript菜鸟教程ava言javaee
let njava言语ewArr1 = [...new Set(arr)]
console.log(newArr); // [1, "1",数据结构与算法 2, 3, 4, 5, und数据结构c言语版严蔚敏efined, "undefined", null, NaN, 0, {}, {}, [], []]
console.log(newArr1); // [1java编译器, "1",javascript菜鸟教程 2, 3, 4, 5, undefined, "undefined", null, NaN, 0, {}, {}, [数据结构与算法], []]
// 不能差异 +0,-0;以为NaN不等于NaN;不能差异政策,以为两个javascript政策总是不相数组排序等的。不能差异数组,以为两个数组总是不相等的。
console数组指针.log(new Set([+0,-0])); //Set(1) {0}
const set = new Set(json格局怎样翻开[1,2,3,4]);
console.log(set); // Set(4) {1, 2, 3, 4}
console.log(set.s数据结构与算法ize); // 4
co数组函数的使用办法nsoJavale.log(...set); // 1 2 3 4

Set的特征数据结构与算法和办法

console.dir(Set);
//  Setjson()
// argumjson转mapen数据结构ts: (...)
// caller: (...)
// length: 0
// namjson解析e: "Set"
// prototype: Set
//   add:  add()
//   clear:  clear()
//   constructor:  Set()
//   delete:  delete()
/java根本数据类型/   entries:json转map  entries()
//   forEach数组指针:  forEach()java编译器
//   has:  has()
//   keys:Java  values()
//   sizjavascriptjavascript九九乘法表:void(0)e: (...)
//   values:  values(数组指针)
//   Symbol(Symbol.iterator):  val数组c言语ues()
/数组初始化/   Symbol(Symbol.toStringTag): "Sjavascript高档程序设计et"数组公式
//   get s数据结构题库及答案ize:  sizjson格局怎样翻开e数据结构难学吗()
//   __proto__: Obj数组排序ect
/数据结构期末考试题及答案/ Symbol(Symbol.species)javascript数据类型jsonp跨域原理:jsonp跨域原理数组词 (...)
// get Symbol(Symbjavascript是干什么的组c言语ol.sp数据结构题库及答案ecies):  [Symbol.species]()
// __proto__:  ()
// [[Scopes]]: Scopjavascript是干什么的es[0]

Set的实例特征

  • Set.p数组排序r数据结构知识点总结ototypjson文件是干什么的e.constrjsonp跨域原理uctor:结构函数,默许就是Se数组词t函数.
  • Set.prototype.size:回来Set实例的成员总数.

Set的操作办法

  • add(value数组函数的使用办法):增加某个值,回来Set结构自身
  • delete(valujava模拟器e):删去某个值,回来一个布尔值,标明json格局删去是否成功。
  • hasjavaee(valu数据结构难学吗e):回来一个布尔值,标明参数是否为Set的成员
  • clear():清空全部成json解析员,没有回来值
consJavaScriptt S = new Set();
S.adjava面试题d(1).add(2).add(数据结构严蔚敏2);
console.log(S); // Set(2) {1, 2}
console.log(S.size); // 2
console.log(S.has(1));javascript菜鸟教程 // true
console.log(S.hjsojson格局怎样翻开n格局怎样翻开as(javascript菜鸟教程数据结构与算法2)json怎样读); // true
cojavascript根底入门nsole.log(S.has(3)); // false
S.delete(2);
console.logjavascript是干什么的(S.has(2)); //false
console.log(S.size); // 1
S.clear();
console.log(S.size); // 0
// 判别是否包含一个键
const properties = new Set();
properties.add('width');
pr数组词ope数据结构题库及答案rties.addjson是什么意思('heigh数组的定义t');
if(properti数据结构esjson.has('width')){
// do somethingjson转map
}数据结构与算法
// Array.jjsonavascript是干什么的fr数组的定义om()可以将Sejavascript面试题t结构转化成数数据结构c言语版
const items = new Set([1,2,3,4,5数据结构期java编译器末考试题及答案]);
cons数据结构c言语版t array = Arra数据结构javascjsonpript:void(0)y.from(items);
console.log数组去重(items,array); // Set(5) {1, 2, 3, 4, 5} [1, 2, 3, 4, 5]

Set的遍历操作(用于遍历成员)

  • keys(): 回来键名
  • values(): 回来键值
  • enjavascript面试题tries()数据结构c言语版第数据结构二版课后答案: 回来键值对
  • forEach(): 运用回调函数遍历每个成员
let set1 = new Sejava根底知识点tjava怎样读javascrip数据结构教程第5版李春葆答案t什么意思(['red','green','blue']).add('yellow');
for(let item of set1.keys()){
console.log(item);
// red
// green
//数组去重 blue
// yellow
}java模拟器
for (let i of set1.vjson解析alues()) {
cojson怎样读数组的定义nsjavascript根底入门ole.log(i);
// red
// gree数据结构知识点总结n
// blue
// yeljava怎样读low
}
for (let i of set1) {
console.log(i);
// red
// green
// blue
// yellow
}
for (javascript什么意思let i of set1.ejava言语ntries()) {
console.log(i);
// ["red", "rjava根底知识点ed"]
/javascript是干什么的/ ["greenJava", "green"]
// ["blue", "bl数据结构知识点总结ue"]
// ["yellow",数据结构知识点总结 "yellow"]
}
let set2 = new Set([1,2,3]);
set2.forEach(value=>javascript根底入门consjsonole.log数组数据结构严蔚敏函数的运用办法(value*2));
// 2
// 4
// 6 

...运算符遍历

co数据结构与算法nst setN = new Set([1,2,3]);
let newSetN = new Set([...setN].map(x=数组函数的使用办法>x*2));
console.log(newSetN); /json文件是干什么的/ Set(3) {2, 4, 6}数据结构与算法
const setM = njson格局ew Set([1,2,3,json文件是jsonp干什么的4,5]);
let数据结构严蔚敏 newSetM = new Set([...setM].filte数据结构题库及答案r(x=>(x%2===0)));
console.log(newSetjson解析M); // Set(2) {2, 4}
const a = new Set([1,2,3]);
const b = new Set([4,2,3数据结构试验一线性表试验报告]);
const c = new Set([...a,...b]);
console.log(cjava言语); // SeJavaScriptt(4) {1, 2, 3, 4}
consjsonpt d = new Set([...a].fi数组lter(x=>b.has(x)));
co数据结构严蔚敏nsole.log(d); // Set(2) {2, 3}
const e = new Set([...a].filter(x=>!jsonpb.has(x)));
consoljsonpe.log(e); // Set(1) {1}

Wjava编译器ejavascript菜鸟教程akSet

语法:

new WeakSet([iterable]);
WeakSet.prototype.add(value);
WeakSet.prototype.hajavaees(value);java面试题
WeakSet.prototype.delete(valjsonp跨域原理ue)数组词;

jsonpSet的差异:

  • 数据结构难学吗一,WeakSet的成员只数据结构难学吗能是政策,而不能是JSON其他类Java型的值;
  • 第二,WeakSet中政策json转map都是弱引证,即废数组词物回收机制不考虑WeakSet对该政策的引证,也就是说,假定其他政策JavaScript都不再引证该政策,那么jsonp跨域原理废物回收机制javascript面试题会回收该政策所占用的内存,不考虑该政策是否还存在于WeakSet之中;json文件java根本数据类型数据结构与算法干什么的
  • 第三,WeakSetjavascript面试题能对其元数据结构知识点总结素进jsonp跨域原理数组指针行迭代,并没有那么多运用景象;
  • 第四,没数据结构严蔚敏有size特征。

运用:

let set = new Weajava言语kSet();
const class_1 = {}, class_2 = {};
set.add(class_1);
set.add(class_2);
console.log(set) // WeakSet {O数组初始化bject {}, O数据结构严蔚敏bject {}数据结构试验一线性表试验报告}
console.logjava环境变量配备(set.has(cl数组ass_1)javaee) // true
console.logjavaee(set.has数据结构题库及答案(class_2)) // true

Map

JavjavaeeaSc数组排序ript的政策本质上是键值对的集结(Hash结构)数据结构试验一线性表试验报告,可是只能用字符串作为键;javascript数据类javascript数据类型
MapjavJavaScripta面试题类似于政策,也数据结构严蔚敏是键值对集结javascript是干什么的,各种类型的值(jsonp跨域原理组指针包含政策)都能作jjava环境变量装备sonp为键;
+0,-0Map视为一javascjavascript九九乘法表ript面试题个键;
NJavaaN,JavaNaN Map视为一个java怎样读键;

const m = new Map();
const o = {p:'hello world'};
m.sejava根本数据类型t(o, 'content');
conjson格局sole.log(m.size); // 1javascript
console.dir(m); // Map(1)
console.log(m.get(o)); // 'contjavascriptent'
consoljavascript面试题e.log(m.has(o)); // true
m.delete(o)
console.java言语log(m.has(json格局怎样翻开o)); // fjava根柢数据类型alse

创立Map

const mapOne = new Map([
[1,'one'],
[2,'two'],
[3,'three']
]);
cons数据结构期末考试题及答案tjavascJavaScriptript数据类型 ma数据结构期末考试题及答案pTwo = new Map()
.set(1,'on数据结构e')
.set(2java编译器,'two')
.set(3,'three');
console.log(mapO数组词ne,mapTwo); // Map(3) {1 => "one", 2 =&g数组公式t; "two", 3 => "threejava根柢数据类型"} Map(3)javascript {1 =&数据结构难学吗gt; "one", 2 => "two", 3 =>json解析 "three"数据结构严蔚敏}

Map 的根底用法

const map = new Map([
['name','张三'],
['title','author']
]);
console.log(map); // Map(2) {"nam数据结构期末考试题及答案e" => "张三", "title" =>javascript数据类型 "author"}
console.log(map.size); // 2
consojava怎样读le.log(map.has('name'));javascript:void(0) // true
console.log(map.get('name')); // '张三'
console.log(map.hajava面试题s('t数组词itle数据结构期末考试题及答案')); // true
console.log(map.get('tit数据结构c言语版第二版课后答案le')); // 'author'
const items = [['name',数组'张三数组'],['title','author']];
const mapItems = new Map();
items.forEach(数据结构c言语版
([key,value]) => mapItems.set(key,value)
)
console.log(mapItems); // Map(2) {"name" => "张三", "title" => "aujavascript高档程序设计thor"}

各类Map的键

  • NaN
console.log(Na数据结构知识点总结N === NaN); // faljava环境变量配备se
conjsonpsole.log(Objava怎样读ject.is(NaN, NaN)); //j数据结构严蔚敏son转map trujava根本数据类型e
const mapNaN = new Map().set(NaN,'NaN123');
console.log(mapNaN.get(NaN)); // 'NaN123'
  • +0,-0
consoljson解析e.log(+0 === -0); // true
console.log(Object.is数组c言语(+0, -0)); // true
const ma数据结构难学吗p00 = new Mapjson怎样读().set(+0,'000');数据结构c言语版第二版课后答案
console.log(javascriptmap00.get(-0)); // '000'
  • {}
console.log(new Map().set({},1).sjava环境变量装备et({},2).sjjavascript数据类型avascript根底入门ize); // 2
  • []
console.log(new Map().set([],1).set([],2).size); // 2
  • true,f数组javascript什么意思的定义alse,null,undefined,’true’
const mapAll = new Map();
mapAlljson解析.set(true,true).set数组的定义('tru数组和链表的差异e','true')javaee.set(undefined,1).set(null,2);
consolJSONe.log(mapAll.get(true),mapjava面试题All.get('true'),mapAll.get(undefined),mapAll.get数据数组指针结构题库及答案(null)); // trujava环境变量配备e 'true' 1 2

留神:不存在的特征jsonp键回来undefined

console.log(new数组初始化 Map().get('abjson解析csdf数据结构f'));javascript面试题 // undefined

留神:不仅仅是数组,任何具有Iterator接口且每个成员都是一个双数组的数据结构都可以当作Map结构函数的参数。

const set = new Set([['fojavascript菜鸟教程o',1],['bar',2]]);
const m1 =json转map new Map(set)jsonp;
console.l数据结构c言语版og(m1.ge数据结构知识点总结t('f数据结构题库及答案javascript菜鸟数据结构与算法教程oo')); // 1

留神:对同一个键赋值,后边的值json会掩盖前面的值

 const mapNew = new Map();
mapNew.set(1, 'aaa').set(1, 'bbb');
console.log(mapNew.get(1数据结构与算法)); // 'bbb'
console.log(mapNew.get('11dasda')); // un数组defined

留神:只要对同一政策的引证,Majavascript面试题p结构才javajson格局根柢数据类型将其视为同一个键。

const数据结构题库及答案 mapjavasc数据结构期末考试题及答案ript数据类型A = new Mjava根底知识点apjsonjava环境变量装备p跨域原理(javascript高档程序设计)
mapA.set(['a数组公式'], 555);
console.log(数据结构期末考试题及答案mapA.gjson格局et(['a'])javascript是干什么的); // undefined
let aa = ['a'];
mapA.set(aa, 555);
console.log(majavascript:void(0)pA.g数据结构知识点总结et(aa)); // 555

留神javascript数据类型:相同的值的两个实例在Map数组函数的使用办法据结构javascript根底入门严蔚敏结构中被视为两个键,简javascript是干什么的略类型值在外(数字,字符串数据结构教程第5版李春数据结构难学吗葆答案,布数据结构c言语版第二版课后答案尔值)

const mapSame = new Map();
const k1 = ['a'];
const k2 = ['a'];
mapSame.set(k1,111).set(k2,222);
console.log(mapS数组函数json格局的运用办法aJav数组和链表的差异ame.get(k1),mapSame.get(k2java怎样读)); // 111 222
const数组排序 k3 = {a:1};
const k4 = {a:1};
mapSame数组公式.set(k3,123).json解析set(k4,234);
console.logjavascript数据类型(mapSame.get(javascript根底入门k3),mapSame.get(k4)); // 123 234
const k5 = 1;
const k6 = 1;
mapS数据结构难学吗JSOName.set(k数组和链表的差异5,456).set(k6,789);数据结构知识点总结
console.log(mapSame.数据结构c言语版get(k数组c言语5),mapSame.get(k6javascript)); // 789 789

Map的特征、操作办法、遍历办法

size:回来Map结构的成员总数;
set(key,value):设置key所对JavaScript应的键值,然数组去重后回来整个Map结构;假定key现已优质,则键javascript高档程序设计值会javascript根底入门被更新,不然就新生成改键;
get(key):读取key所对应的键值,假定找不到key,则回来undefined;
has(key):回来一个布尔值,标明某个键是否在Map数据结构中;
delete(key):删去某json转map个键,回来true,假定失利,则回来false;
clear(): 清空全部成员,没有回来值;

const map = nJavaew MJavaScriptap([
[false,'no'],
[tr数据结构知识点总结ue,'yes']javascript根底入门,
[json是什么意思undefined,1],
[null,2],
[NaN,3],
[+0,4],
[JSON{},5],
[[],6]
])
console.log(map);
// Map(8) 
//   [[java编译器Entries]]数组和链表的差异
//   0: {false => "no"}
//   1: {true => "yes"}
//   2: {undefined =&java根本数据类型gt; 1}
//   3:数组函数的使用办法 {null => 2}
//   4: {NjavascriptaN => 3}
//   5: {0 =&gtjson格局怎样翻开; 4}
//   6:数据结构难学吗 {Object => 5}
//   7: {Array(0) => 6}
//数组c言语   sijava根底知识点ze: 8
//   __proto__: Map
console.log(map.size); // 8
map.set(NaN,33).set(-0, 4javascript4).set({},55)数据结构c言语版第二版课后答案.set([],66);
consojavascript菜鸟教程le.log(map);
/数组/ Map(10) 
//   [[Entries]]数组和链表的差异
//   0: {false => "no"}
//   1: {true => "yes"}
//   2:数据结构题库及答案 {undefined => 1}
//   3: {null => 2}
//   4: {NaN =&数据结构题库及答案gt; 33}
//   5: {0 => 44}
//   6: {Objjson转mapect数组初始化 => 5}
//   7: {Array(0) =&gjava言语t; 6}
//   8: {Object => 55}
//   9: {Array(0) => 66}
/数组/   size: 10
//   __proto__: Map
console.log(map.size); //10
console.log(map.get(fal数组c言语se)); // 'no'
console.log(map.get(true)); // 'yes'
conjava面试题sole.log(mapjson怎样读.gejavaeet(njson格局ull)); // 2
console.log(map.get(undefin数组json解析函数的运用办法ed)); // 1
console.log(map.getJavaScript(0)); // 44
console.log(jsonmap.get({}java言语));java根本数据类型 // undefined
console.log(map.g数据结构题库及答案et([])); // undefined
console.log(map.数组和链表的差异get('abcdef')); // undefined
console.lo数组c言语g(map.has(false))数据结构题库及答案; //true
cjava模拟器onsole.log(map.hajavascript菜鸟教程s(true)); //true
console.log(majava面试题p.has(0)); //true
console.lojavascriptg数据结构试验一线性表试验报告(map.has(NaN)); //true
console.log(map.has({}))javascript什么意思; //false
console.log(map.has([])); //false
console.log(majava怎样读p.has('ab数据结构与算法cdef'数据结构难学吗))javascript:void(0); //false
map.set(undefjava面试题in数据结构难学吗ed,11).set(null,22).java怎样读set(true,'yesyes').set(fa数据结构教程第5版李春葆答案lse,'nono');
conjavascript菜鸟教程sole.log(map.get(undefjson文件是干什么的javajava模拟器script数据类json转mapijson是什么意思ned)); // true
console.log(map.g数组和链表的javascript差异et(null)); // 22
cons数据结构知识点总结ole.log(map.get(true)); // 'yesyes'
consojava编译器le.log(map.数据结构c言语版第二版课后答案get(false)); // '数组排序nono'
map.delete(undjava模拟器efined);
map.delete(null);
map.delete(true);
console.log(map.getjava环境变量配备(undefined)); // undefined
conjavascript是干什么的sole.log(map.get(n数据结构ull)); // undefined
console.log(map.get(javascript什么意思trujava根底知识点e)); // unjavascriptdefined
console.log(map.javascript什么意思get(fal数组的定义se)); // 'nonojavascript高档程序设计'
conjavascript菜鸟教程sojavaeele.log(majava模拟器p.javascript数据类型java怎样读size); // 7
map.clear();
console.log(ma数据结构c言语版第二版课后答案p.size); // 0

keys():回来键名;
valu数据结构c言语版第二版课后答案es():回来javascript数据类型键值;
enjava根本数据类型tries():回来全部成员;
forEacjavaeeh():回来Map全部成员;

const map = new Map()
.set(1,'one')
.set(2,'two')
.set(3,'three')
for (const key of map.keys()) {
console.log(key);
// 1
// 2
// 3
}
for (const value of map.values()) {
console.log(value);
// 'one'
// 'two'
// 'three'
}
for (const [key,value] ojson格局怎样翻开f map.entries()) {
console.lojava面试题g数据结构教程第5版李春葆答案(key,数据结构c言语版严蔚敏value);
// 1 'one'
// 2 'two'
// 3 'three'
}
for (const [key,javascript面试题value] of map) {
console.logjavascript:void(0)(key,value);
// 1 'one'javascript九九乘法表
// 2 'two'
// 3 'three'
}
console.logjson转map([...map.keyjava言语s()]); //java根底知识点 [1,2,3]
console.数组公式log([...map.values()])java言语; // ['one','two','three']
consoJSONle.log([...mapjava怎样读.entries()]); // [[1,'on数组c言语e'],[2,'two'],[3,'thre数据结构严蔚敏e']]
console.log([..json文件是干什么的.map]数据结构教程第5版李春葆答案)java模拟器; // [[1,'one'],[2,'two'],[3,'three']]
map.forEach((value,key,map)=>{
consol数据结构c言语版e.log(key,vjson文件是干什么的alue);
// 1 'one'
// 2 'two'
// 3 'three'
})
// forEach办法还能接收第二个参数,用于绑定t数据结构his
const数组词 reporjavascript根底入门ter = {
report:(kejson文件是干什么的yjava怎样读,value)=>{
console.log(key,value);
// 1 'one'
// 2 'two'
// 3 'tJavaScripthree'
}
}
map.java根柢数据类型forEach(function(数据结构c言语版第二版课后答案value,kJavaScriptey,map){
this.report(javascriptkey数据数组指针结构jsonc言语版第二版课后答案,value)
},reporter)
const数组c言语 map1 = njava言语ew M数组和链表的差异ap(
[...json文件是干什么的mjavaeeap].filter(([k,v])=>k<3)
)
console.log(mapjava编译器1); // Majavascript数据类型p(2) {1 => "one", 2 => "two"}
const map2 = new Map(
[...map].map(([k,v])=>[k*数组公式2,"_"+v])
)
console.log(map2); // Map(3) {数据结构题库及答案2 => "_数据结构难学吗ojava面试题ne", 4 => "_javascript九九乘法表two", 6 => "_th数据结构严蔚敏ree"}

与其他数据结构互相转化

  • Map和数组互转
const myMap = new Map()
.set(true,7)
.set({foo:3},['abc']);
letjson转map ajson格局怎样翻开rrMapjavascript是干什么的 = [...myMap]
console.log(arrjs数组的定义on转mapMap); // [[truejson怎样读,7],[json是什么意思{foo:3},['abc']]]
c数据结构教程第5版李春葆答案onsole.log(new Map(arrMap)); // Map(2) {true => 7, {javascrijavascript:void(0)pt数据类型foo:3} => Arra数据结构与算法y(1)}
  • Map和政策互转(java言语=>obj需求Map的一数据结构c言语版切键都是字符串)
function MaptoObj(strMap){
let obj = Objectjavaee.create(null);
for (const [k,v] of str数组排序Mjava环境变量装备a数组和链表的差异数据结构c言语版严蔚数组初始化p数组函数的使用办法) {
objjavascript根底入门[k数据结构难学吗] = vjava模拟器;
}
return obj;
}
fjavaeeunction ObjtoMap(objJSON){
let strMap = new Map();
for (const k of Object.ke数据结构期末考试题及答案ys(obj)) {java怎样读
strJavaScriptMap.set(k,obj[k])
}
return strMap
}
coJavaScriptnst strMap = new Map([
['yes',true],
['no',false]
])
const endOjava根柢数据类型bj = MaptoObj(strMap)
console.log(endObj); // {yes数据结构c言语版第二版课后答案: true, no: fJavaaljavascriptse}jav数组公式a编译器
console.log(ObjtoMap(endObj)); // Map(2) {"yes" => true, "no" => false}
  • Map和JSON互转数组排序(=>JSjajava面试题va言语ON:Map键名都是字符串,可以转为政策JSON;还有非字符串,可json怎样读以转为数组c言语数组JSON。=>Map:政策JSOJavaN;数组JSONjavascript是干什么的。)数据结构难学吗
// map转政策JSOjson是什么意思N
fujavascript九九乘法表nction MaptoObjJSON(strMap){
return  JS数据结构与算法ON.st数据结构c言语版第二版课后答案ringify(MaptoObj(strMap))
}
function MaptoObj(strMap){
let obj = Object.create(nuljava根底知识点l);
for (const [k,v] of strMap) {
obj[k] = v;
}数据结构题库及答案
returnjsonp跨域原理 obj;
}
const mjavascript什么意思yMap = new M数组初始化ap(数组指针)
.set('yes', true数据java怎样读结构知识点总结)
.se数组json怎样读排序t('no', false);
console.lo数据结构期末考试题及答案g(MaptoObjjavascript高档程序设计javascript高档程序设计JSONjava根本数据类型(myMap)); // '{"y数组c言语es":数据结构知识点总结true,"no":false}'
// m数据结构教程第5版李春葆答案ap转数组JSON
function MaptoArrJSON(strMap){
rjsonp跨域原理eturn JSON.strijava言语ngify([...strMajson是什么意思p])
}
consjson文件是干什么的t myMap1 = new Map([
[true, 7],
[{foo:3},['abc']]
])
console.log数据结构与算法(MaptoArrJ数组c言语SON(myMap1)); // '[javascript面试题[true,7]json格局怎样翻开,[{"foo":3},[javascript什么意思"abc"]]]'
// 政策JSON转Map
function st数据结构难学吗rJSONtoMap(strJson){
return ObjtoMap(JSON.parse(strjava面试题Json))
}
funct数据结构ion ObjtoMap(obj){
let strMap = new Map();
for (javascript是干什么的const k ojavascript面试题f Object.keys(obj)) {
strMap.set(k,obj[k])
}
return strMap
}
console.jsonp跨域原理log(strJSONtoMap('{"yes":true,"no":falsejavascript:void(0)}'));数组指针 // Map(2) {"javascript数据类型yes" => true, "no" => false}
// 数组JSON转Map数据结构难学吗
function数据结构知识点总结 ArrJSONjavascript什么意思toMap(arrJson){
ret数组初始化urn new Map(JSON.parse(arrJson))
}
consjavascriptjavascript九九乘法表面试题ole.ljava根本数据类型og(ArrJSONtoMajson文件是干什么的jav数组函数的使用办法a根柢数据类型p('[[true,7],[{"foo":3},["abc"]]]')); // Map(2) {true => 7, {javascript…} =&gtjson格局怎样翻开; Arrayjava言语(1)}

WeajavascriptkMap

和Map的差异:

没有数据结构遍历操作;
无法清空,不支持clear办法;数据结构严蔚敏
key是政策,值可所以任何值;

const wm = new WeakMap()
wm.JavaScriptset('abc', 123); // TypeErrjavascript是干什么的or
wm.set({}, 123); // OK

ES6Set和Map数据结构