Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用dart将多个对象打印到console.log?_Dart_Dart Html - Fatal编程技术网

如何使用dart将多个对象打印到console.log?

如何使用dart将多个对象打印到console.log?,dart,dart-html,Dart,Dart Html,在javascript中,如果我有如下3个变量: var x=1 变量y='cat' var z={color:'blue'} 我可以这样记录它们: console.log('值为:',x,y,z) 在dart中,您可以导入'dart:html',它将打印映射到编译的javascript中的控制台.log。但是print只接受一个参数,而不是3个。当编译的js在浏览器中运行时,此dart将失败: print('值为:',x,y,z) 我唯一能想到做的就是将这些参数字符串化,并将它们连接成一

在javascript中,如果我有如下3个变量:

var x=1
变量y='cat'
var z={color:'blue'}
我可以这样记录它们:

console.log('值为:',x,y,z)
在dart中,您可以
导入'dart:html'
,它将
打印
映射到编译的javascript中的
控制台.log
。但是
print
只接受一个参数,而不是3个。当编译的js在浏览器中运行时,此dart将失败:

print('值为:',x,y,z)
我唯一能想到做的就是将这些参数字符串化,并将它们连接成一个字符串,然后打印出来。但是我失去了Chrome扩展打印到控制台的对象的能力

是否可以使用一个
print
语句(或类似语句)打印多个对象?如果是,怎么办?

关于:

print('值为:${[x,y,z]}')

print('值为:$x,$y,$z')

['值为:',x,y,z].forEach(打印);
在Dart中,您可以导入,从而访问
窗口。控制台
。不幸的是,它的log方法只能接受一个参数。不过,您可以将对象包装到列表中:

import 'dart:html';

var x = 1
var y = 'cat'
var z = {color: 'blue'}

window.console.log([x, y, z]);

两个版本都将所有对象作为字符串的一部分打印,而不是作为独立对象打印。实际的javascript对象(例如,
{one:1,…}
)将无法以这种方式展开打印。对于每个元素,将调用
toString()
,并将结果添加到字符串中。我不是一个JavaScript程序员,也不知道在那里如何以不同的方式处理这个问题。我添加了另一个变体,也许这是您所期望的。第三个版本打印所有值,但将对象打印为字符串而不是对象。也许这是不可能的。这就是印刷的作用。它对传递的值调用
toString()
。Mybe您只想使用
window.console.debug
而不是
print
,但在Dartiums控制台中只生成不同的输出,而不是在DartEditor的控制台视图中。回答得好!)@甘特斯切鲍尔,再次感谢你!)特别是对于最后一个)如果执行
打印([x,y,z]),会发生什么情况?很好,但有点遗憾,因为dart与浏览器api不匹配,所以您必须进行变通