如何在Dart语言中完整地将变量转储/打印到控制台?

16 浏览
0 Comments

如何在Dart语言中完整地将变量转储/打印到控制台?

嘿,我正在寻找一种在Dart语言中将动态变量尽可能完整地打印到控制台的函数。

在PHP中,我会使用var_dump()来获取有关变量的所有信息。

在JavaScript中,我会使用以下方法之一:

1)将对象转换为JSON并打印console.log(JSON.stringify(obj))

2)或者使用一个自定义函数,如下所示:

function dump(arr,level) {
  var dumped_text = "";
  if(!level) level = 0;
  //The padding given at the beginning of the line.
  var level_padding = "";
  for(var j=0;j \"" + value + "\"\n";
    }
   }
  } else { //Stings/Chars/Numbers etc.
   dumped_text = "===>"+arr+"<===("+typeof(arr)+")";
  }
  return dumped_text;
 }

然而,在Dart中,如果我执行print(variable),我会得到类似于"Instance of 'FooBarObject'"的输出。我不能像在JavaScript中那样将对象转换为JSON,因为这对于所有对象都不可能。

因此,我的问题是:

有没有一个函数或自定义函数可以将一个未知类型的变量(对象、数组等)以及所有(公开的)属性以及嵌套的对象和变量打印到我的控制台?或者哪个函数最接近这个需求?

0