javascript&typescript学习总结

一.简介

1.JavaScript

JavaScript(简称“JS”) 是一种具有函数优先的轻量级,解释型或即时编译型的编程语言。虽然它是作为开发Web页面的脚本语言而出名,但是它也被用到了很多非浏览器环境中,JavaScript 基于原型编程、多范式的动态脚本语言,并且支持面向对象、命令式、声明式、函数式编程范式。

它的语法风格与Self及Scheme较为接近。JavaScript的标准是ECMAScript 

2.typescript

TypeScript是微软开发的一个开源的编程语言,通过在JavaScript的基础上添加静态类型定义构建而成。TypeScript通过TypeScript编译器或Babel转译为JavaScript代码,可运行在任何浏览器,任何操作系统 

TypeScript添加了很多尚未正式发布的ECMAScript新特性(如装饰器 )。

二.JavaScript应用

1.变量

var name="页面"//name是srting类型

var age="20"//age是number类型

var flag="true"//flag是boolean类型

2.数据类型

JavaScript一共有两种数据类型,分别为基本数据类型和引用数据类型。

2.1基本数据类型

boolean(布尔类型)

number(数值类型)

string(字符串类型)

null(空值)

undefined(未定义)

symbol

2.2引用类型

object(对象)

2.3各数据类型分析

2.3.1string

在JS中需要用双引号或单引号使用  “”  ‘’。符号不可混合使用,否则会报错。

2.3.2number 数值

在js中,所有数值都是Number 数值,包括小数整数。

使用Number表示的数字超过了最大值,则会返回一个Infinity表示正无穷大, - Infinity 表示负无穷大。

Number.MAX_VALUE 表示数值的最大值。

2.3.3boolean

布尔(逻辑)只能有两个值:TRUE 或 FALSE

2.3.4null和undefined

null表示没有对象,此处无值

undefined表示缺少值,本来应该有值但没有定义

2.3.5symbol

函数可以接受一个字符串作为参数,为新创建的 Symbol 提供描述,用来显示在控制台或者作为字符串的时候使用,便于区分。

2.3.6object

对象由花括号分隔。在括号内部,对象的属性以键值对的形式 (name : value) 来定义。属性由逗号分隔。

3.函数声明

函数通常是使用函数声明语法定义的。

1.function xxx(){}

2.var xx = function(){}

3.var test3 = newFunction(“a”,“b”,“return a+b;”);

三.typescript应用

3.1使用环境

虽然typescript与JavaScript有相似之处,但是js的环境无法运行ts的代码,所以需要安装typescript将ts代码转为js代码。

3.2数据类型

TypeScript中的数据类型分为两大类:原始类型(基本数据类型)、对象类型(复杂数据类型)
常用基本数据类型:number、string、boolean、undefined、null。

3.2.1. 基本数据类型 
let isDone: boolean = false;
let decLiteral: number = 6;
let myName: string = 'Tom';
let u: undefined = undefined;
let n: null = null;

3.2.2. 任意值 //任意值(Any)用来表示允许赋值为任意类型。
let myFavoriteNumber: any = 'seven';
myFavoriteNumber = 7;

3.2.3. 联合类型 //表示取值可以为多种类型中的一种。
let myFavoriteNumber: string | number;
myFavoriteNumber = 'seven';
myFavoriteNumber = 7;

3.2.4. 数组:是用于存放多个数据的集合。需要声明时指定数组中元素的类型,多个元素之间使用( , )分隔, 数组中的每一项内容称为元素
let fibonacci: Array<number> = [1, 1, 2, 3, 5];

3.2.5元组//元组属于数组的一种,就是固定长度的数组,合并了不同类型的对象,规定了元素数量和每个元素类型的数组,声明时要指完元素个数为每个元素规定类型,元素的类型和值必须一一对应。

3.2.6. 函数
function buildName(firstName: string, lastName?: string) {
    if (lastName) {
        return firstName + ' ' + lastName;
    } else {
        return firstName;
    }
}
let tomcat = buildName('Tom', 'Cat');
let tom = buildName('Tom');

3.2.7 断言 //用来手动指定一个值的类型。
interface Cat {
    name: string;
    run(): void;
}
interface Fish {
    name: string;
    swim(): void;
}

function swim(animal: Cat | Fish) {
    (animal as Fish).swim();
}

3.2.8Object//Object:表示任意的js对象

let a: object

a={};

a=function(){
}

3.3函数声明

TypeScript里我们可以在参数名旁使用 ?实现可选参数的功能。

参数分为:可选参数、默认参数、剩余参数。

可选参数必须跟在必须参数后面。

默认参数,不必在必要参数后。

当想传入多个参数或不知道传入多少参数时,可以使用剩余参数。

四.总结

学习Java时需要自己动手多做,这样才能理解代码的思路。在写代码时需要理解每行代码的意义,这样才能在自己的代码出现错误时及时发现并改正。

在学习打代码的过程中需要多多进行代码编写,这是一个熟能生巧的过程,我们不能指望一蹴而就,我们可以在完成老师布置的任务的间隙在网上找相关内容自己练习。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值