diff --git a/knockout.mapping.js b/knockout.mapping.js index 2ac4a3d..1183377 100644 --- a/knockout.mapping.js +++ b/knockout.mapping.js @@ -799,7 +799,7 @@ } var bucket = buckets[bucketKey]; - if (bucket === undefined) { + if (!buckets.hasOwnProperty(bucketKey)) { bucket = new simpleObjectLookup(); buckets[bucketKey] = bucket; } diff --git a/spec/issues.js b/spec/issues.js index 3ac3ea8..61ff3c2 100644 --- a/spec/issues.js +++ b/spec/issues.js @@ -314,3 +314,10 @@ test('Issue #107', function () { equal(model.foo(), "baz"); }); + +//https://github.com/SteveSanderson/knockout.mapping/issues/124 +test('Issue #124', function () { + var model = ko.mapping.fromJS({ foo: 'constructor' }); + + equal(model.foo(), 'constructor'); +});