为什么是打字稿?了解该语言的主要优势。
Typescript Vs JavaScript
TypeScript 是 JavaScript 的强类型超集,编译为纯 JavaScript。它是微软在 2012 年维护的一个开源框架。
它主要提供可选的静态类型、类和接口,以及 提供环境以避免键入代码时出现常见错误的主要好处之一, 以及更好的工具,是一个加号。
任何有效的 JavaScript 程序也是有效的 TypeScript 程序,但反之则不然(反之亦然)。
在本教程中,您将了解该语言的主要优势。让我们看看 typescript 的实际应用……
一些常见的错误:
让我们看看 JavaScript 程序的一些限制以及 TypeScript 如何在此基础上构建:
JavaScript program which prints the language name.
在上面的 JavaScript 程序中,我们只是假设参数“ 姓名” 将是一个字符串。程序中没有确保参数 “姓名” 是否将是一个字符串。
在 JavaScript 中,我们可以传递一个 “数字”、“布尔”、“数组” 或者 “目的” 任何作为参数 “姓名” 在这种情况下的功能。例如
但是现在让我们通过调用方法将这个“name”参数转换为大写“ toUpperCase() ”。
calling the method “toUpperCase()” from string class in JavaScript.
因为我们已经假设“ 姓名 “变量将是一个” 细绳 ” 类型变量并且函数需要一个字符串变量,调用这个程序并以大写形式打印语言名称是没有问题的。
语言名称是 TYPESCRIPT
用例 1:
现在想象一下,如果我们尝试通过传递一个数值或例如传递一个布尔值来调用函数,你认为会发生什么?
Function calling by passing a numeric and boolean value, runtime error.
TypeError:name.toUpperCase 不是函数
这仍然是一个有效的 JavaScript 程序,但是如果我们运行这个程序,我们会在结果中得到一个运行时错误。一种典型的 JavaScript 错误类型,每个人都会面临很多次。
JavaScript 是一种非常强大和灵活的语言,但它也有一些缺点。在创建程序的过程中,JavaScript 很容易出错。这种类型的错误只发生在运行时。
用例 2:
另一个例子 JavaScript中这种类型的错误是让我们更改变量的名称“ 长名称 “ 至 ” 姓名 ”。尽管如此,这是一个有效的 JavaScript 程序,编译时间没有问题。
Rename the variable “langName” to “name”, runtime error.
ReferenceError: langName 未定义
但是如果我们在浏览器中运行这个程序,这次我们会得到一个引用类型错误“ langName 未定义 ”正如你在上面的程序中看到的那样。只是因为我们更改了程序顶部的变量名。
typescript 如何防止所有这些错误并帮助更好的开发?
就像语言的名称一样,Typescript 表明它具有强大的类型系统,可以让我们在开发时检测程序中的所有这些问题。让我们看看 TypeScript 如何检测这些错误并允许我们
用例 1(TypeScript 解决方案):
所以,Typescript 允许我们在这里添加一个 类型注释 ( : 细绳 ) .这个类型注解只是告诉语言编译器这个参数“ 姓名 ”应该是“ 细绳 “ 类型。
Function call by passing numeric or boolean value, compile time error underline in red.
正如您在添加类型注释后所看到的“ 细绳 ”的参数“ 姓名 ” 在函数中,我们得到一个 ** 红色下划线的编译错误 ** 因为 number、boolean 和数组类型的参数不能分配给 string 类型的参数。
它表明,我们可以在开发周期的早期修复这些错误。
用例 2(TypeScript 解决方案):
让我们重命名这个“ 长名称 ” 到不同的东西,例如“languageN AME ” 程序顶部的变量。
正如你现在所看到的,语言编译器为我们提供了 ** 红色下划线的编译错误** 我们在程序中使用这个变量的任何地方。使用 TypeScript,您可以轻松地重命名变量,而无需任何破坏代码。
更好的工具:
像重命名变量这样的 TypeScript 功能非常有用,并且可以更轻松地重构我们的代码库。
每当我们在函数中使用这个参数时,我们都会有一些强大的自动完成功能,它提供了“ 细绳 ” 类等等。这种先进而精确的自动完成功能使我们更容易编写程序。
All suggested member variables and functions of String class.
结论:
让我们总结一下我们从本教程中学到的东西:
TypeScript 是 JavaScript 的超集。它通过强大的类型系统扩展了 javascript 语言的功能。这使我们能够在开发时修复许多类型的错误,甚至在运行它之前。
Typescript 编译器总是向我们准确地指出我们在哪里调整了我们的代码,而不会在运行时破坏任何东西。它还使工具能够建议自动完成,变量名的重构和可维护性变得容易。
正如我们所看到的,TypeScript 比普通的 JAvaScript 具有更多的优势,并且由于更好的工具和编译器错误消息以及随着时间的推移重构我们的程序而使得维护更大的代码库变得更加简单。
…
您还可以阅读: ** 在 JavaScript 中创建空对象**
就是这样,希望对您有所帮助。
拍手和关注。
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明
本文链接:https://www.qanswer.top/40128/37330109
标签:TypeScript,语言,错误,程序,JavaScript,打字,优势,类型,我们 From: https://www.cnblogs.com/amboke/p/16746799.html