From c4685a9e3a579c253ccf8e7379c047c3a1f99106 Mon Sep 17 00:00:00 2001 From: Deema Evanov Date: Thu, 25 Sep 2014 16:28:53 +0400 Subject: [PATCH 1/2] Make `set` chainable `.set` should return self, according to the spec https://people.mozilla.org/~jorendorff/es6-draft.html#sec-weakmap.prototype.set --- weakmap.js | 1 + 1 file changed, 1 insertion(+) diff --git a/weakmap.js b/weakmap.js index 8d2155a..0540742 100644 --- a/weakmap.js +++ b/weakmap.js @@ -20,6 +20,7 @@ if (typeof WeakMap === 'undefined') { entry[1] = value; else defineProperty(key, this.name, {value: [key, value], writable: true}); + return this; }, get: function(key) { var entry; From 618df70f44c06b8b82b0121fb971d18f8eb0101e Mon Sep 17 00:00:00 2001 From: Deema Evanov Date: Tue, 30 Sep 2014 11:06:08 +0400 Subject: [PATCH 2/2] Test chaining of .set --- tests/index.html | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/tests/index.html b/tests/index.html index 822d5d0..04a7b03 100644 --- a/tests/index.html +++ b/tests/index.html @@ -40,8 +40,7 @@ var o2 = function(){}; var o3 = window; - wm.set(o1, 37); - wm.set(o2, 'aoeui'); + wm.set(o1, 37).set(o2, 'aoeui'); assert.equal(wm.get(o1), 37); assert.equal(wm.get(o2), 'aoeui');