Dart 省道符号文字
我正在阅读关于区域的文档,它有以下代码:Dart 省道符号文字,dart,Dart,我正在阅读关于区域的文档,它有以下代码: runZoned(() { print(Zone.current[#key]); }, zoneValues: { #key: 499 }); 我试图找到更多的文档符号文字,但我找不到,它们非常稀少 我键入以下代码进行测试: var a = #b; 我可以看到a是一个符号 符号文字是如何工作的 它指的是什么 仅通过创建一个,我就创建了一个新的唯一符号。符号不是唯一的。它们用于在运行时表示源名称,因此也可以写入的符号文本a的符号值表示标识符a 符
runZoned(() {
print(Zone.current[#key]);
}, zoneValues: { #key: 499 });
我试图找到更多的文档符号文字,但我找不到,它们非常稀少
我键入以下代码进行测试:
var a = #b;
我可以看到a是一个符号
符号文字是如何工作的
它指的是什么
仅通过创建一个,我就创建了一个新的唯一符号。符号不是唯一的。它们用于在运行时表示源名称,因此也可以写入的符号文本a的符号值表示标识符a 符号仅出现在Dart中更具活力的部分。特别是,它们用于表示类(参数传递给noSuchMethod和函数)使用的命名参数。如果您的平台可以访问,它们也会在那里使用,这就是它们最初的用途 您不需要在这些情况之外使用符号,但在某些情况下,如上面的键,这只是一种简单的方法,可以提供一个带有自己名称的可复制而非唯一的标记。或者,如果您想要一个您自己的库所独有的令牌,您可以为私有名称\u foo创建一个符号。这表示库私有的_foo标识符,其他库无法复制该标识符
使用非字符串的源名称表示形式,例如,Dart-to-JavaScript编译器可以缩小名称,而不必在部署的代码中保留较长的源标识符。符号不是唯一的。它们用于在运行时表示源名称,因此也可以写入的符号文本a的符号值表示标识符a 符号仅出现在Dart中更具活力的部分。特别是,它们用于表示类(参数传递给noSuchMethod和函数)使用的命名参数。如果您的平台可以访问,它们也会在那里使用,这就是它们最初的用途 您不需要在这些情况之外使用符号,但在某些情况下,如上面的键,这只是一种简单的方法,可以提供一个带有自己名称的可复制而非唯一的标记。或者,如果您想要一个您自己的库所独有的令牌,您可以为私有名称\u foo创建一个符号。这表示库私有的_foo标识符,其他库无法复制该标识符
使用非字符串的源代码名称表示形式,例如,Dart-to-JavaScript编译器可以缩小名称,而不必在部署的代码中保留较长的源代码标识符。请注意。Dart规范第88页第16.8章描述了它们的工作原理及其背后的原因:作为注释。Dart规范第88页第16.8章描述了它们的工作原理及其背后的原因: