diff --git a/lib/jsonpath.js b/lib/jsonpath.js
index ccdbfd59dc8c61b4c4d03188664cf4e95b487394..0905f08de48b1a7e579a21763d4c07ffea09e895 100644
--- a/lib/jsonpath.js
+++ b/lib/jsonpath.js
@@ -39,13 +39,14 @@ function JSONPath (opts, obj, expr) {
     }
 
     opts = opts || {};
+    var len1 = arguments.length === 1;
     this.resultType = (opts.resultType && opts.resultType.toLowerCase()) || 'value';
     this.flatten = opts.flatten || false;
     this.wrap = opts.hasOwnProperty('wrap') ? opts.wrap : true;
     this.sandbox = opts.sandbox || {};
 
     if (opts.autostart !== false) {
-        return this.evaluate(obj || opts.json, expr || opts.path);
+        return this.evaluate((len1 ? opts.json : obj), (len1 ? opts.path : expr));
     }
 }