typescript学习笔记
模块与模型的区别
模块是个物理概念上的划分
模型是逻辑概念上的划分
数组
TypeScript像JavaScript一样可以操作数组元素。 有两种方式可以定义数组。 第一种,可以在元素类型后面接上 [],表示由此类型元素组成的一个数组:
let list: number[] = [1, 2, 3];
第二种方式是使用数组泛型,Array<元素类型>:
let list: Array<number> = [1, 2, 3];
var、let、constde区别?
简单来说是: let是修复了var的作用域的一些bug,变的更加好用。let是更好的var。var的作用于是函数作用于,而let是块级别(大括号括起来的内容)
const声明的变量只可以在声明时赋值,不可随意修改,这是最大的特点。
——————————-
使用var声明的变量,其作用域为该语句所在的函数内,且存在变量提升现象;
使用let声明的变量,其作用域为该语句所在的代码块内,不存在变量提升;
使用const声明的是常量,在后面出现的代码中不能再修改该常量的值。
——————————
摘自:https://www.zhihu.com/question/52662013
析构的用法
typescript源代码:
//返回对象
function getname() {
return {
ID : 111,
name : "wxfeng"
}
}
//针对对象的析构表达式,用大括号
var { ID, name } = getname();
console.log(ID);
console.log(name);
//另使用别名 userid
//var { ID:userid, name } = getname();
//console.log(userid);
//console.log(name);
//针对数组的析构表达式,用中括号
var array = [1, 2, 3, 4];
var [number1, number2, ...others] = array;
console.log(number1);
console.log(number2);
console.log(others);
javascript源代码:
//返回对象
function getname() {
return {
ID: 111,
name: "wxfeng"
};
}
//针对对象的析构表达式,用大括号
var _a = getname(), userid = _a.ID, name = _a.name;
console.log(userid);
console.log(name);
//另使用别名 userid
//var { ID:userid, name } = getname();
//console.log(userid);
//console.log(name);
//针对数组的析构表达式,用中括号
var array = [1, 2, 3, 4];
var number1 = array[0], number2 = array[1], others = array.slice(2);
console.log(number1);
console.log(number2);
console.log(others);
优点:减少代码的书写量,且不易出错.
作用:当需要用对象的属性或数组里面的值来初始化一些本地的变量时,析构表达式可以满足你写更长的代码.
箭头表达式
//用来声明匿名函数,消除传统匿名函数的this指针问题
var sum=(arg1,arg2)=>arg1+arg2;
console.log(sum(1,2));
//输出结果:3
function getStock(name:string){
this.name=name;
setInterval(()=>{
console.log("name is"+this.name)
},1000)
}
var stock = getStock("IBM");
//输出:name is IBM
一条评论
添加新评论
- Pingback: 2021年学习编程的新手入门指南(上篇)


