TypeScript 是微软开发的 JavaScript 的超集,TypeScript兼容JavaScript,可以载入JavaScript代码然后运行。TypeScript与JavaScript相比进步的地方 包括:加入注释,让编译器理解所支持的对象和函数,编译器会移除注释,不会增加开销;增加一个完整的类结构,使之更新是传统的面向对象语言。

安装ts编译器(在此之前需要先安装node)

npm install -g typescript

检查版本

tsc -v

使用方法,需要转换为js文件

tsc .ts

就会发现系统自动转换了一个.js文件,我们就可以使用npm 1.js 输出;

基本类型

// 基本类型
let num:number = ;
let str:string = '哈哈';
let bool:boolean=true;
console.log(num,str,bool)

数组

// 数组
let strArr:string[] = ['a','b','c']
let numArr:number[] = [,,]
let boolArr:boolean[] = [true,false]
let anyArr:any[] = ['a',,false,null,undefined]
console.log(strArr,numArr,boolArr,anyArr)

元祖

// 元祖>表示一个已知的数据类型
let tuple : [string,number,boolean,any] = ['a',,false,undefined];
// 调用时候系统会检测是什么类型,然后提示对应的方法;
console.log(tuple[].substr())
console.log(tuple[].toFixed())

枚举

// 枚举
enum Sex {
Man,
Women
}
let sex1:Sex = Sex.Man
let sex2:Sex = Sex.Women
// 输出的是下标
console.log(sex1,sex2)

enum类型

// enum
enum NewSex {
// 枚举可以修改默认值
Man1 = ,
Women2 =
}
let sex3:NewSex = NewSex.Man1
let sex4:NewSex = NewSex.Women2
// 输的是下标,输出的是3,4;
console.log(sex3,sex4)
// 通过下标得到参数
let chang1:string = NewSex[]
let chang2:string = NewSex[]
console.log(chang1,chang2)

any任意类型

// any 可以为任意类型的值,在不确定值得类型的时候使用;
let any1:any = ;
let any2:any = 'abc';
let any3:any = true;
console.log(any1,any2,any3)

void无返回值

// void 无返回值,void类型,只能赋值null和undefined
let void1:void = null;
let void2:void = undefined;
// 这里不能定义string,number,boolean
console.log(void1,void2)
function fun():void{
console.log('前端伪大叔')
}
fun()

never必须存在无法到达的终点

// never :必须存在无法到达的终点
// 表示永不存在的值的类型 1、抛出异常的参数 2、不会有返回的函数表达式 3、箭头函数的返回值类型
// 任意类型的子类型,可以赋值给任意类型(说白了就是任何类型都有一个never类型)
// nnever没有子类型,任何类型都不能赋值给never类型(除了never自己)
function error(mes:string):never{
// 抛出异常函数
throw new Error(mes)
}
error('未知错误')
// 可以使用永true或者false,更多的用于底层的框架
// object 除了number,string,boolean,symbol类型

如果大家喜欢的话,欢迎关注“前端伪大叔”我将为您不间断的分享前端学习知识!

前端必学TypeScript之第一弹,st基础类型!的更多相关文章

  1. 前端必学内容:webpack3快速入门 1-23节内容参考

    前端必学内容:webpack(模块打包器) webpack3 学习内容,点击即可到达 (1).webpack快速入门——如何安装webpack及注意事项 (2).webpack快速入门——webpac ...

  2. 前端必学---JavaScript数据结构与算法---简介

    前端必学---JavaScript数据结构与算法---简介 1. 数据结构: 数据结构是相互之间存在一种或者多种特定关系的数据元素的集合.---<大话数据结构> 1.1 数据结构的分类 1 ...

  3. 前端必学库之bootstrap

    想要成为一个全栈程序员,其实有很多技术线路.很多人说有了nodejs后,只学JAVASCRIPT就可以了.其实,会NODEJS后端开发,严格来说算是高级前端.就站长个人理解,后端的主流还是4P:jsp ...

  4. 『MXNet』第一弹_基础架构及API

    MXNet是基础,Gluon是封装,两者犹如TensorFlow和Keras,不过得益于动态图机制,两者交互比TensorFlow和Keras要方便得多,其基础操作和pytorch极为相似,但是方便不 ...

  5. 新一代Java程序员必学的Docker容器化技术基础篇

    Docker概述 **本人博客网站 **IT小神 www.itxiaoshen.com Docker文档官网 Docker是一个用于开发.发布和运行应用程序的开放平台.Docker使您能够将应用程序与 ...

  6. 闲来无事——第一弹 Java基础 基本数据类型

    一个优秀的Java类一定要去优质的名称,类的命名主要有字母和数字,并且必须以字母开头:虽然说没有明确规定类名首字母要大写,但是实际上如果出现首字母小写的类名,那就呵呵了,坐等挨骂吧!类名首字母大写是业 ...

  7. 好程序员web前端分享想要学习前端需要学那些课程

    好程序员web前端分享想要学习前端需要学那些课程,仔细思考了一下如何回答好这个话题,其实前端是一个涵盖面非常之广泛的一个职位,所需知识体系非常庞杂,与传统语言“想要精一行,必先通一门” 有很大差别, ...

  8. 想转行做web前端工程师,必学这5大技能!知道是那些吗?

    web前端工程师是近几年才发展出来的新兴职业,也是目前火爆且高薪的职业. 大需求的市场环境下,出现了越来越多的人群转行做web前端工程师,如设计师.后台程序员.网虫.大学其他专业.策划.编辑等等. 要 ...

  9. 0基础算法基础学算法 第八弹 递归进阶,dfs第一讲

    最近很有一段时间没有更新了,主要是因为我要去参加一个重要的考试----小升初!作为一个武汉的兢兢业业的小学生当然要去试一试我们那里最好的几个学校的考试了,总之因为很多的原因放了好久的鸽子,不过从今天开 ...

随机推荐

  1. WebView调用js方法获取返回值的完美解决方案

    在Android项目中我们或多或少会涉及到与js交互的问题,这其中WebView是必须掌握的控件,今天主要说说我们通过WebView调用js方法,然后如何很好的获取返回值.这里我总结了三种方式,大家可 ...

  2. Android:高通平台性能调试

    1.GPU / CPU 信息打印脚本 gpu_cpu_info.bat @echo off echo "==================GPU====================== ...

  3. python小白之字典使用笔记

    Python 字典(Dictionary)   字典是一种可变容器模型,且可存储任意类型对象. 每个键值 key=>value 对,用冒号 : 分割 每个键值对之间用逗号 , 分割 整个字典包括 ...

  4. centos7 mysql 启动mysqld.service - SYSV: MySQL database server错误

    1.启动命令 systemctl start mysqld.service 或者 /etc/init.d/mysqld start   结果同样的错误 2.错误是: Job for mysqld.se ...

  5. C++ STL nth_element

    #include <iostream>#include <algorithm>#include <deque> using namespace std; int m ...

  6. 配置Xmanager远程登录

    1.修改/etc/gdm/custom.conf文件找到下面的语句:[security]AllowRemoteRoot=true[xdmcp]Enable=true修改custom.conf后,必须重 ...

  7. [Tensorflow] 使用 tf.train.Checkpoint() 保存 / 加载 keras subclassed model

    在 subclassed_model.py 中,通过对 tf.keras.Model 进行子类化,设计了两个自定义模型. import tensorflow as tf tf.enable_eager ...

  8. 02.02 lamp环境搭建笔记

    lamp环境 在linux中安装 apache.mysql.php三种软件环境,同时需要安装他 某些插件. cp /etc/apt/sources.list /etc/apt/sources.list ...

  9. Spirng 分层,增加数据访问对象层

    到层关键注释 @Repository 对应的包 import org.springframework.stereotype.Repository;

  10. vue-cli3创建vue项目之vue.config.js配置

    module.exports = { // 基本路径 publicPath: '/', // 输出文件目录 outputDir: 'dist', // eslint-loader 是否在保存的时候检查 ...