我想知道在使用UI5时使用letconst关键字是否安全。我不知道是否返回letconst甚至使用sap.m.Table创建例如let都会产生不利影响。

也许有人对此有一些经验?

最佳答案

我认为您担心浏览器不兼容吗? letconst是用于声明变量的构造;它们不影响对象寿命。 let声明一个块范围变量,而const声明一个只读变量。这些变量中包含的对象具有完全不同的生命周期。

这实际上不是UI5问题,而是一般的JavaScript问题。无论使用哪种库,应用程序的兼容性都取决于两个因素:


您正在使用的每个库的兼容性矩阵。
您正在编写的代码的兼容性。


由于您无法真正控制兼容性matrix of UI5(应该涵盖ES6的兼容性矩阵),因此所有这些都归结为您必须问自己的两个主要问题:


我支持哪些浏览器?
我可以使用某些东西来转换我的代码以支持较旧的浏览器吗?


对于第一个问题,如果您只关心可本地支持ES6(not IE)的浏览器,则可以肯定使用它。否则,第二个问题可能更有意义。如果您有体面的C.I.为您的应用程序提供适当的管道,然后可以使用babel之类的东西将闪亮的ES6代码转换为IE非常喜欢的冗长的意大利面条。



以后编辑:

根据评论,我要指出,ES6并非全有或全无支持。即使不是完整的ES6,功能子集(如对const和let的支持)也可用于某些浏览器(IE)。具体来说,基于https://caniuse.com/#feat=lethttps://caniuse.com/#feat=const,看来IE11中提供了letconst(但在较早的版本中不可用)。不支持其他功能,例如ES6 class definitions

09-26 13:50
查看更多