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年学习编程的新手入门指南(上篇)