typescript的核心概念和应用

版权声明:转载请注明出处 https://blog.csdn.net/qdmoment/article/details/85257675

强类型和弱类型概念:

强类型指的是每个变量和对象都必须具有声明类型,他们是在编译的时候就确定类型的数据,在执行时类型不能更改;

而弱类型在执行的时候才会确定类型, 

typescript是javascript的一个超集,设计理念是在兼容es6语法的基础上,提供类型检查。javascript是弱编程语言,es5不具备面向对象编程的能力,es6具备了类和模块的概念,而typescript扩展了面向对象编程能力,是一门弱编程语言像强编程语言一样使用。

Typescript ES6 关系 Typescript ES6语法对比 TypeScript和ES6的区别

javascript是基于对象和事件驱动的,无需特定的语言环境,只需在特定的支持的浏览器上就可以运行。

javascript是一门轻量级的解释性脚本语言,可以嵌入到HTML页面,就能由浏览器逐行加载解释执行。

JavaScript 的语法简单,使用的变量为弱类型。

JavaScript 语言较为安全,仅在浏览器端执行,不会访问本地硬盘数据。

JavaScript 语言具有动态性。JavaScript 是事件驱动的,只根据用户的操作做出相应的反应处理。

JavaScript 只依赖于浏览器,与操作系统的因素无关。因此 JavaScript 是一种跨平台的语言。

JavaScript 兼容性较好,能够与其他技术(如 XML,REST API 等)一起使用。

TypeScript 具有以下特点:

TypeScript 是 Microsoft 推出的开源语言,使用 Apache 授权协议

TypeScript 增加了静态类型、类、模块、接口和类型注解

TypeScript 可用于开发大型的应用

TypeScript 易学易于理解

typescript提供的核心概念:

TypeScript 通过类型注解提供编译时的静态类型检查。

TypeScript 中的数据要求带有明确的类型,JavaScript不要求。

TypeScript 为函数提供了缺省参数值。

TypeScript 引入了 JavaScript 中没有的“类”概念。

TypeScript 中引入了模块的概念,可以把声明、数据、函数和类封装在模块中。

具体:

  1. 类型注解
  2. 接口
  3. 函数
  4. 泛型
  5. 枚举

————————————————————————————————————————————————

类型注解:

let str: string;//ts代码
let str;//编译生成的js代码

————————————————————————————————————————————————

接口:

    interface Point{
        x: number;
        y: number;
    }

————————————————————————————————————————————————

类:

class Greeter {
    greeting: string;
    constructor(message: string) {
        this.greeting = message;
    }
    greet() {
        return "Hello, " + this.greeting;
    }
}

————————————————————————————————————————————————

函数:

    function add(x: string, y: string, z?:string): string{ 
        return x + y; 
    }

————————————————————————————————————————————————

泛型:

class Greeter<T> {
    greeting: T;
    constructor(message: T) {
        this.greeting = message;
    }
    greet() {
        return this.greeting;
    }
}
 
let greeter = new Greeter<string>("Hello, world");

————————————————————————————————————————————————

枚举:

enum Direction {
    Up,
    Down,
    Left,
    Right,
}

————————————————————————————————————————————————

猜你喜欢

转载自blog.csdn.net/qdmoment/article/details/85257675