From 9ebeadf423cccae298d4e911dde32d477d211817 Mon Sep 17 00:00:00 2001 From: Austin Sanders Date: Fri, 1 Jun 2018 17:21:32 -0700 Subject: [PATCH] added undefined and null support fixes #105 --- reflections/type/type-test.js | 2 ++ reflections/type/type.js | 3 +++ 2 files changed, 5 insertions(+) diff --git a/reflections/type/type-test.js b/reflections/type/type-test.js index 5f2b080..468dd3f 100644 --- a/reflections/type/type-test.js +++ b/reflections/type/type-test.js @@ -82,6 +82,8 @@ QUnit.test("isMapLike", function(){ QUnit.test("isMoreListLikeThanMapLike", function(){ QUnit.equal(typeReflections.isMoreListLikeThanMapLike({}), false, "Object"); QUnit.equal(typeReflections.isMoreListLikeThanMapLike([]), true, "Array"); + QUnit.equal(typeReflections.isMoreListLikeThanMapLike(undefined), "undefined", "undefined"); + QUnit.equal(typeReflections.isMoreListLikeThanMapLike(null), "undefined", "null"); }); QUnit.test("isObservableLike", function(){ diff --git a/reflections/type/type.js b/reflections/type/type.js index bdeb326..4de0017 100644 --- a/reflections/type/type.js +++ b/reflections/type/type.js @@ -453,6 +453,9 @@ module.exports = { if(obj instanceof Array) { return true; } + if(obj === undefined || obj === null) { + return "undefined"; + } var value = obj[canSymbol.for("can.isMoreListLikeThanMapLike")]; if(value !== undefined) { return value;