typeScript简单理解

什么是TypeScript?
TypeScript 是 JavaScript 的超集;
通俗点也可以理解成TypeScript是JavaScript的扩展语法
TypeScript 生于JavaScript 忠于JavaScript
就像Sass Less 一样; 虽然用Sass Less 的语法但是最终会编译成css,
TypeScript 也一样,虽然用的是TypeScript进行编写,最后还是会编译成JavaScript

简单点说,ts可以理解成一种规则,规定js声明变量的时候必须加上数据类型,函数返回时,也要添加返回的类型

TypeScript的使用:

第一步安装TS

npm install typescript -g
`如果是mac`:sudo npm install typescript -g

 第二步配置环境

1.项目目录下初始化项目     npm init -y		生成package.json文件
2.创建 `tsconfig.json`  tsc --init   tsconfig.json是TypeScript的配置文件
3.安装@types/node 	   npm install @types/node --dev-save  解决模块声明问题

第三步使用:

1.创建hello.ts文件,
2.在命令行用 tsc hello.ts 编译,会自动生成一个hello.js
3.在命令行用 node hello.js 运行代码

 TS中类型:
TypeScript中的数据类型有:
undefined ;
number:数值类型;
string : 字符串类型;
boolean: 布尔类型;
enum:枚举类型;
any : 任意类型;
void:空类型;
Array : 数组类型;
tuple : 元祖类型; 已知声明一个数组,数组里面的类型可以不同; *****项目中不推荐使用
Null :空类型。

TS面向对象

	class Xiaojiejie{  
		var name:string
		var age:number
		constructor(name:string,age:number){
			this.name = name
			this.age = age
		}
		say():void{
			console.log('hello')
		}
	}
	var xiaojiejie:Xiaojiejie = new Xiaojiejie('小姐姐',18)

 

修饰符

  1. public 共有的
  2. protected 受保护 只有熟悉的人才知道
  3. private 私有
  4. readonly 只读修饰符
class Xiaojiejie{
    public sex:string 
    protected name:string
    private age:number
    public constructor(sex:string,name:string,age:number){
        this.sex = sex
        this.name = name
        this.age = age
    }
    public say(){
        console.log('Hello')
    }
    protected sayLove(){
        console.log('love you')
    }
}
var Jiejie:Xiaojiejie = new Xiaojiejie('男','bob',18)
console.log(`${Jiejie.sex}`)  //可以访问
console.log(`${Jiejie.name}`) //属性受保护,只能Xiaojiejie这个类以及子类能访问
console.log(`${Jiejie.age}`) //私有的只能在Xiaojiejie这个类中访问

class Man{
    public readonly sex:string = '男'
}
var man:Man = new Man()
man.sex = '女' //只读,不可以赋值

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
TypeScript 中的代理(Proxy)是一种机制,它允许你拦截并自定义对象的操作。通过使用代理,你可以在对象的属性访问、赋值、函数调用等操作之前或之后执行自定义逻辑。这为你提供了更大的灵活性和控制力。 要创建一个代理对象,你可以使用 `Proxy` 构造函数。它接受两个参数:目标对象和一个处理程序对象(也称为代理处理器)。代理处理程序是一个包含各种钩子方法的对象,用于拦截和处理不同的操作。 下面是一个简单的示例,演示如何使用 TypeScript 创建一个代理对象: ```typescript const target = { name: "John", age: 30 }; const handler = { get: function(target, prop) { console.log(`Getting property ${prop}`); return target[prop]; }, set: function(target, prop, value) { console.log(`Setting property ${prop} to ${value}`); target[prop] = value; } }; const proxy = new Proxy(target, handler); console.log(proxy.name); // 输出:Getting property name,John proxy.age = 35; // 输出:Setting property age to 35 console.log(proxy.age); // 输出:Getting property age,35 ``` 在上面的示例中,我们创建了一个名为 `target` 的普通对象,它具有 `name` 和 `age` 两个属性。然后,我们定义了一个代理处理程序 `handler`,其中包含了 `get` 和 `set` 两个钩子方法。在这些方法中,我们可以自定义对象的属性访问和赋值行为。最后,我们使用 `new Proxy` 创建了一个代理对象 `proxy`,并对其进行了一些操作。 注意:由于 TypeScriptJavaScript 的超集,上述示例中的代码也适用于 JavaScript 环境。 希望这个简单的示例能够帮助你理解 TypeScript 中的代理概念和用法。如果你有更多问题,请随时提出。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值