TypeScript 的Hello World
TypeScript是一种开源的编程语言。它由微软开发和维护。TypeScript在语法上遵循javascript,但添加了更多功能。它是javascript的 超集 。
下图描述了它们的关系:
TypeScript是完全面向对象的,具有类、对象和接口等特性,就像Java一样。以前对于JavaScript的变量和对象,我们不需要提及它们的数据类型,这使得整体逻辑难以理解,因为我们不知道我们正在处理的数据类型是什么。TypeScript解决了这个问题,并为开发人员提供了一种声明变量和对象数据类型的方法。
TypeScript提供的一些内置类型包括:
- number: 64位双精度数字,可以表示整数和小数。
- string: 一串字符或字符串类型数据。
- void: 用于返回空值的函数。
- null: 表示没有值或null值。
- boolean: 表示布尔值,可以是true或false。
定义变量的语法:
var variable_name : type;
示例:
// declares a string type variable called name.
var name: string;
// declares a number type variable called amount.
var amount: number;
// declares a boolean type variable called check;
var checked: boolean;
// declares a string type variable called first_name and
// initializes with some value.
var first_name: string = "geeksforgeeks";
// declares an array of numbers called digits.
var digits: number[];
定义类、对象和函数的语法:
class Class_Name{
// instance variables
// constructor
// Typescript allows only one constructor per class
constructor(parameters){
}
// methods
}
var object_name:class_name;
function_name(): returntype{
// function_body
}
示例:
class Name {
first_name: string;
last_name: string;
constructor(fname: string, lname: string)
{
first_name = fname;
last_name = lname;
}
getName(): string
{
var fullname: string = first_name + last_name;
return fullname;
}
}
var author_name: Name;
运行Typescript代码
浏览器本地不支持Typescript,但支持JavaScript。因此,为了运行Typescript代码,首先需要将其转译为JavaScript。
tsc: 是一个将Typescript代码转译为JavaScript的Typescript编译器(转译器)。
您可以通过运行以下命令来安装tsc:
npm install -g typescript
创建一个基本的typescript代码,打印“来自Geeks For Geeks的问候”:
var greet: string = "Greetings";
var geeks: string = "Geeks For Geeks";
console.log(greet + " from " + geeks);
// save the file as hello.ts
- 编译TypeScript代码可以在命令行中运行以下命令:
tsc hello.ts
该命令将生成一个名为hello.js的JavaScript文件。
- 使用以下命令在命令行上运行JavaScript文件:
node hello.js
您应该在命令行上看到以下输出:
Greetings from Geeks For Geeks
TypeScript语言的应用:
- Angular 2+ 的版本是用TypeScript编写的,并且使用TypeScript,证明了它在工业应用中的高效性。
- TypeScript可以方便地在编译时诊断错误。
- TypeScript可扩展性强,能够良好地支持大型应用程序。
参考资料:
1. http://www.typescriptlang.org/
2. http://www.typescriptlang.org/docs/index.html