当前位置: 首页 > 知识库问答 >
问题:

TypeScript-何时使用目标版本?

岳浩
2023-03-14

我很难理解tsc目标版本的含义(ES3与ES5)。

在TypeScript中,输出仍然使用Array.prototype.reduce即使我以ES3为目标,它说人们应该将其作为语言规范来阅读,但并没有澄清很多事情。据我所知,设置--目标对输出和警告/错误消息都没有任何影响。

我认为此选项是为了支持Visual Studio功能是否正确?

共有2个答案

王凯旋
2023-03-14

Array.prototype.reduce是一个API。TypeScript编译器不提供API。TypeScript开发人员需要了解JavaScript及其API。与CoffeeScript相同:“这只是JavaScript”。

例如,在 TS 代码中,可以使用 API Array.prototype.reduce,然后将代码转换为 ES3 语法。它将在带有es5-shim的IE8上运行。

薛淮晨
2023-03-14

TypeScript 是 JavaScript 的超集,因此编译器只接触非 JavaScript 位,需要用 JavaScript 代码替换。“target”标志仅用于告诉编译器它可以在此处使用哪些功能。例如,如果您以 ES3 为目标,则具有属性访问器的 TypeScript 类将不会编译,因为编译器无法转换

class Foo {
    public get bar(): string {
        return 'Bar';
    }
}

转换成有效的ES3 JavaScript。

 类似资料:
  • 在太平洋标准时间每天午夜会自动构建TypeScript的master分支代码并发布到NPM和NuGet上。 下面将介绍如何获得并在工具里使用它们。 使用 npm npm install -g typescript@next 使用 NuGet 和 MSBuild 注意:你需要配置工程来使用NuGet包。 详细信息参考配置MSBuild工程来使用NuGet。 www.myget.org。 有两个包:

  • TS应该怎么学习?在实际项目中又应该怎么使用TS? 公司的项目开发要使用vue3和TS,写vue3倒是会,但是不会写TS,在网上看TS资料也是看了个大概。具体的使用不太会用,请问学习TS应该是什么步骤去学习,在项目中用TS该怎么用,需要注意什么点,求告知,求指导 看了CSDN上的文章

  • 我试图在OPENSHIFT上部署应用程序,但maven无法编译它,出现错误: 目标版本1.8无效 java版本“1.8.0_05” Java(TM)SE运行时环境(build 1.8.0_05-B13) Java HotSpot(TM)64位服务器VM(build 25.5-B02,混合模式)

  • 我试图理解Typescript编译器何时转换代码以使其与我指定的目标ECMAScript版本(ES5或ES3)兼容。 例如,TSC 可以很好地转译 for(),但它不会转译 根据 w3schools 的说法,这是 ES6 的一个功能)。 IE中不支持< code>Number.isInteger() 我能期望什么被转移,什么不会?我最初预计一切都会被转移,这样我就不必跟踪这样的事情,但事实似乎并非

  • 1.背景 项目里已经引入了bcprov-jdk15on-1.54.jar,并且在很多地方使用. 现在合作方给过来一套新的接入资料,里面有以下jar包. 2.问题 项目中的bcprov-jdk15on存在两个版本,旧的是1.54,新的是1.69. 类似于下面这张图: 由于很多地方用到了1.54版本,所以不能直接升级到1.69. 现在想实现以下两点: 对于本次的新版本,其中的fintech-java-

  • 问题内容: 我见过类似的问题,但尚未找到答案。 使用Maven编译,我得到: 这是pom.xml: Javac版本: Java版本: 知道会是什么吗? 问题答案: 您需要将JAVA_HOME设置为jdk7主目录,例如在Microsoft Windows上: “ C:\ Program Files \ Java \ jdk1.7.0_40” 或在OS X上: /图书馆/Java/JavaVirtua