ts 自学笔记

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ts 自学笔记相关的知识,希望对你有一定的参考价值。

参考技术A 就是强制转换的类型,人为的类型强制转换
第一种使用尖括号 (<string> someValue).length
第二种使用as关键字 (someValue as string).length

ts中使用let和const声明变量,并且具有块级作用域(花括号作用域)

使用最小特权原则,所有变量除了你计划去修改的都应该使用const

const [first ,second] = [1,2]

const a,b = a:1,b:2

解构可以加默认值 a,b=100

...操作符有展开的作用
let first = [1,2,3]
let a=[1,...first]

ts的核心原则之一是对变量类型进行强制检查。可以叫做填鸭式辩型或者结构性子类型化。

接口可以声明可选属性,实现不一定需要具有此类属性
interface ISquare
color?:string;
width?:number;


有些属性只能在对象实例化的时候赋值
interface Point
readonly x:number;
readonly y:number;


let p:point = x:1,y:100
p1.x=5 //error

ReadonlyArray<T> 类型可以创建一个只读的数组
let r:ReadonlyArray<number> = [1,2,3]
r[0] = 2 //error

readonly vs const
如果限制的是对象则使用const 如果限制的是对象的属性 则使用readonly

一般情况下,接口的实现需要满足刚好覆盖其中的所有属性,但是有时候会有动态添加额外属性的需求

同java这类语言一样

extends 关键字:类型java

通过super关键字指代父类(this指代本类) 这个例子也演示了如何在子类中重写父类的方法

private 私有修饰符 只能在本类中被访问的成员
public 公共修饰符 所有地方都能访问
protected 受保护修饰符 在继承类中能被访问

readonly 修饰 只读属性 必须在声明或者构造函数中被初始化

一般作为派生类的基类使用,不能被实例化,抽象类和接口不同的是:抽象类有更多成员的细节
abstract关键字用于定义抽象类和抽线方法
子类继承了抽象类可以去重写里面的方法

完整定义一个函数

函数赋值是不用指定具体类型,会根据类型进行推断

将未知的参数合并到一个集合中

js语言中,this是在函数调用时指定的,函数内部的this指向调用该函数的对象,如果没有对象,则指向window,严格模式下则为undefined

即:函数签名一样,但参数类型,个数和返回值类型不同;
js是动态类型,且参数可变,不存在重载的说法
但是TS可以跟c#一样,定义方法的重载

当创建函数或者对象时,不确定参数的类型,或者可以适用多种类型时,可以用泛型定义
和any不同,any完全不约束传入参数的类型,但是泛型会约束传入参数和返回值的类型一致性

如果不对泛型做约束,所有的类型都需要通过操作验证,比如string有length属性但是boolean没有,如果我们直接在泛型上使用length属性,就会报错,假设我们通过泛型约束去约束类型必须有length属性(即必须继承包含length属性的接口)就不会报错了

希望一个变量同时支持多种类型,使用竖线分割

this类型表示的是某个类或者接口本身

属性对话框自学笔记

    CProperty有2个构造函数:

(1)CMySheet::CMySheet(UINT nIDCaption, CWnd* pParentWnd, UINT iSelectPage)
	:CPropertySheet(nIDCaption, pParentWnd, iSelectPage)

 (2)CMySheet::CMySheet(LPCTSTR pszCaption, CWnd* pParentWnd, UINT iSelectPage)

:CPropertySheet(pszCaption, pParentWnd, iSelectPage)

其中(1)的第一个参数是一个数值,(2)的第一个参数是一个字符串指针,所以在初始化的时候,注意使用哪个构造函数,否者构造函数里面的操作会被忽略导致错误!


本文出自 “玄极无妄” 博客,请务必保留此出处http://zhengdzy.blog.51cto.com/3768085/1748982

以上是关于ts 自学笔记的主要内容,如果未能解决你的问题,请参考以下文章

R语言自学笔记-2内置数据集

virtuoso自学笔记

python自学笔记

Tidyverse自学笔记-ggplot2标度之坐标轴设置

《R语言实战》自学笔记22-数据整理

《R语言实战》自学笔记62-多元方差分析