JavaScript是一种独特的编程语言。它是为web开发而构建的,与其他编程语言有不同的规则。
更显著的区别之一是JavaScript是动态类型的,这意味着在创建变量时不必声明类型。像C、C#和Java这样的语言会让您声明变量类型。这些变量称为静态类型变量。
使用静态类型变量的语言可以提供更高的稳定性并减少代码中的错误。TypeScript弥补了JavaScript和传统编程规则之间的差距。
变量的类型是您计划存储在变量中的信息。
下面是一个Java变量,例如:
int myNumber = 10;这个变量是int,是integer的缩写。这让您知道变量myNumber计划存储一个整数。如果试图在变量中存储不同的值,如字符串,程序将不会运行。
以下是您可能使用过的更多变量类型:
JavaScript不要求您声明变量类型。虽然它给了你更多的自由,但它可能会导致一些相当坏的习惯。这就是TypeScript使您的工作更容易的地方。
TypeScript是Microsoft开发的JavaScript版本,它将变量类型引入到代码中。这不是一种全新的语言;可以将其视为普通JavaScript的包装器。它的语法与JavaScript非常相似,因此很容易入门。
为了说明它们有多相似,这里有一行JavaScript和TypeScript代码。
JavaScript:
let myNumber = 10;打字稿:
let myNumber: number = 10;在TypeScript中声明变量时,同时声明类型。这是一个影响很大的小变化。
TypeScript是一种编译语言,与在浏览器中运行的JavaScript不同。编译语言可以更快,生成更高效的程序。
但是没有任何额外的软件可以下载;TypeScript文件被编译成可以在任何web应用程序中使用的常规JavaScript文件。TypeScript文件另存为.TS文件。
开始使用TypeScript很容易:
使用命令行可以轻松安装NPM:
> npm install -g typescript如果您使用的是Visual Studio 2017或Visual Studio 2015 Update 3,则已经包含了TypeScript。如果没有安装,您可以通过TypeScript网站下载。
JavaScript已经相当不错了,改用TypeScript有什么好处?在web开发中使用TypeScript有很多原因。
TypeScript允许您将类型分配给代码中的变量。你一开始就看到了这个例子,但是这对你有什么帮助呢?
必须为变量分配类型可以使您成为更好的编码者。它迫使你在规划应用程序时仔细考虑你写的每一个变量。这样做可以防止以后在代码中出现错误,使您的应用程序易于阅读,并使您的代码易于测试。
TypeScript为您提供了许多创建变量的选项。
定义数组时,将使用数组中包含的值类型,后跟方括号。
let myArray: number [] = [1,2,3];当您希望TypeScript允许为变量指定任何类型的类型时,使用此变量类型。当您不确定变量可能会变成什么样时,这将为您提供更大的灵活性。
您可以自由更改这些变量的值。
let anyType: any = 10;anyType = "Hello"; //No erroranyType = true; //Still no error当不希望将类型指定给变量时,将使用Void类型。这对于不返回任何值的函数非常有用。
function randomMessage(): void { C***ole.log("This is just a message"); }只是给你一个空值。
let myNull: null = null; //This is all you can do同样简单,这会给您一个未定义的值。
let myUndefined: undefined = undefined; //This is all you can doTypeScript为您提供了一些额外的特性和类型,让您可以使用JavaScript做更多的工作。
元组是一个特殊数组,您可以使用固定数量的元素声明它。这些元素可以有不同的类型,但是元组必须按照您声明的顺序保持类型不变。
let myTuple: [number,string];myTuple = [45, "Hello"];myTuple = ["Hello", 45]; // Error枚举类型是一种特殊类型,用于为序列指定数值
enum Color { Red, Green, Blue }在此枚举中,红色的值为0,绿色的值为1,蓝色的值为2。枚举是零索引的,就像JavaScript中的数组一样。
TypeScript中支持对象类、接口和继承。
JavaScript没有真正的面向对象编程类系统。JavaScript使用的原型系统非常相似,但并不完全相同。如果你来自一个面向对象的背景,单凭这一点就可以让你相信TypeScript。
您可以使用构造函数创建一个类
class Student { Name: string; c***tructor(first,middle,last) { this.Name = first + " " + middle + " " + last; } }let newStudent = new Student("John", "Leonard","Smith");您可以创建一个接口并将其用作类型。
interface Person { personName: string;function sayHello(person: Person) { return "Hello " + person.personName;}TypeScript也在函数中声明类型。
function addNum(num1: number, num2: number) { return num1 + num2;}也可以在函数中使用默认参数。当函数在没有参数的情况下运行时,需要在参数中设置一个值时,这些参数非常有用。
function addNums(num1: number, num2 = 15) { return num1 + num2;}addNums(5,5); // This will return 10addNums(5); // This will return 20. There was no second value, so the default parameter of 15 is used在web浏览器中运行JavaScript非常好,因为它很简单。TypeScript使用编译器将代码翻译成JavaScript文件,但这不是额外的工作吗?
一点也不!TypeScript编译器可以帮助您在编写代码时测试代码。当您在IDE中运行TypeScript文件时,它会在运行过程中标记错误。
减少IDE中的这些错误将清理代码。在编译为纯JavaScript时,已经检查了代码的类型准确性。TypeScript编译器可以根据您的编程首选项进行自定义。
TypeScript是开源的,由Microsoft创建。开源软件有很多好处。开发者社区一直在努力消除任何bug或添加新功能。
TypeScript与VisualStudio和VisualStudio代码配合良好。VisualStudio代码是使用JavaScript的最佳选择,因此如果您决定使用它,您将领先一步。
如果你正在编写一个web应用程序,框架设计就是为了节省你的时间。由于JavaScript是web开发脚本之王,因此使用了很多框架。其中许多框架非常流行。
TypeScript不会阻止您使用这些非常有用的web框架。它与React、Angular、Express、Babel、Vue.js、ASP.NET Core和React Native兼容。
创建TypeScript是为了让JavaScript开发人员更容易地开发web和应用程序。这是非常重要的,你有一个基础与JavaScript和它是如何工作之前跳进TypeScript。
想要挑战吗?下载TypeScript并尝试创建JavaScript幻灯片等常见项目。以你的知识为基础,很快你就会成为一名网络开发专家!
Join our newsletter for tech tips, reviews, free ebooks, and exclusive deals!
Click here to subscribe
主要区别–typescript与es6 TypeScript和ES6是与javascript相关的两种技术在万维网上有大量的网页可用。每个组织都有自己的网站来与客户沟通,了解市场趋势。web应用程序开发中使用了多种技术。最常见的三种技术是HTML、CSS和Java...
javascript(javascript)和打字稿(typescript)的区别 JavaScript是一种流行的web编程语言。它最初被称为LiveScript。TypeScript是一种基于JavaScript的语言。Javascript和TypeScript的主要区别在于Javascript是一种客户端脚本语言,而TypeScript是一种面向...
...,您可以为NativeScript项目使用三种语言之一:JavaScript、TypeScript或Angular。 ...
...智能来帮助您编写代码。该扩展目前支持Python、JavaScript/TypeScript和Java。 ...
... 所有主要的语言都支持,还有用于Typescript的linting和transpiling等。编辑器本身是一个完整的虚拟开发环境,包含终端和输出窗口。CodeTasty是免费的,功能齐全,不过付费层可以用于更多的项目选择和团队协...
...然后关闭你的Mac电脑,而它仍在进行中可以暂停。这就是为什么在下载文件夹中找不到下载的原因:它实际上还没有完成下载。 ...
...仍然非常有用 支持C语言、Visual Basic、C++、TypeScript、F、JavaScript、Python等。 ...
... 该框架提供了完整的图像优化和内部化属性,以及CSS和TypeScript支持。它的API路由方法使it服务器端功能能够让您以最少的精力开发服务器端应用程序。 ...