这些代码在没有--noImplicitAny的情况下工作,但是失败了。
var name = 'abc';
document.body.dataset[name] = 1;
var property = document.body.dataset[name];
var o = {};
var name = 'abc';
o[name] = 1;
var property = o[name];
我部分理解它,因为o['arbitraryName']
是隐含的' any
类型。但是,当有已知的类型属性时,为什么有人会使用它而不是o.arbitraryName
?是不是允许这样做,使#34;一种选择退出打字的方法"? (作为parenthesizing does similar thing for expressions)
我认为应该有一些很好的理由阻止它,我想知道它们是什么。
答案 0 :(得分:0)
它没有被--noImplicitAny
标记阻止,只是引起了你的注意,所以你可以选择不输入"通过明确任何......
var property: any = o[name];