diff --git a/jsonparser.gs b/jsonparser.gs
index 5164e74a1ee40f49af8a8cc5c9e79eebf5a67649..65f194a1b444fe725011cf894a9b151141312f4b 100644
--- a/jsonparser.gs
+++ b/jsonparser.gs
@@ -251,7 +251,10 @@ Parser._parseNumber = function()
 		if "0123456789+-.eE".indexOf(c) == null then break
 		self._p = self._p + 1
 	end while
-	result = val(self.source[startPos : self._p])
+	// In original source, operation was
+	//result = val(self.source[startPos : self._p])
+	// However, it had the side-effect of using the "val" variable from the calling script!
+	result = self.source[startPos : self._p].val
 	return result
 end function