Browse Source

Merge pull request #653 from debris/circular_structure

fixed printing circular structures
Jeffrey Wilcke 10 năm trước cách đây
mục cha
commit
7c583f8222
1 tập tin đã thay đổi với 6 bổ sung10 xóa
  1. 6 10
      jsre/pp_js.go

+ 6 - 10
jsre/pp_js.go

@@ -2,17 +2,13 @@ package jsre
 
 const pp_js = `
 function pp(object, indent) {
-    var str = "";
-    /*
-    var o = object;
     try {
-	object = JSON.stringify(object)
-	object = JSON.parse(object);
-   } catch(e) {
-	object = o;
-   }
-   */
+        JSON.stringify(object)
+    } catch(e) {
+        return pp(e, indent);
+    }
 
+    var str = "";
     if(object instanceof Array) {
         str += "[";
         for(var i = 0, l = object.length; i < l; i++) {
@@ -24,7 +20,7 @@ function pp(object, indent) {
         }
         str += " ]";
     } else if (object instanceof Error) {
-        str += "\033[31m" + "Error";
+        str += "\033[31m" + "Error:\033[0m " + object.message;
     } else if (isBigNumber(object)) {
         str += "\033[32m'" + object.toString(10) + "'";
     } else if(typeof(object) === "object") {