2.15 课堂总结 Vue原型链 TS git stash

66 阅读4分钟

原型链

定义一个构造函数,对它进行new实例化,实例化出来的对象就是实例化对象,可以通过实例化对象的__proto__ 找到它的原型,也可以通过实例化对象的constructor找到构造函数本身,可以通过构造函数的prototype访问 原型,原型也可以使用constructor找到构造函数本身,不管使用实例化对象的__proto__还是构造函数的prototype 访问的都是同一个原型,原型还可以通过__proto__访问到Objcet.Prototype,Objcet.Prototype可以使用 __proto__访问到null

三角关系.png

TypeScript

TypeScript是JavaScript的一个超集,JS有的TS都有,TS还对JS中的数据类型添加了约束,使其更加合理。

安装

在终端中使用npm i typescript -g 全局安装TypeScript

Node和浏览器不能直接运行TS,需要把TS转化为JS,可以使用ts-node编译和执行ts文件

下载ts-node的命令

 npm i -g ts-node 安装ts-node

TS的基础类型又称为原始类型有: String、Number、Boolean、null、undefined、Symbol

TS还有 Object(对象)、Array(数组)、Function(函数)、元组 等高级类型

TS定义变量时需要指定它的数据类型 例如 let str: string = "张三" 元组是TS中一种特殊的数组,元组必须明确元素数量和类型,而且类型必须一 一对应,定义了几个类型就必须写几个

函数的写法

image.png

对象的写法

image.png

数组的写法

image.png

元组

image.png

git stash

在我们正在开发一个功能时,有一个功能出现了BUG,要立即修复,而我们又不想丢弃现有的工作进度时,我们就可以使用git stash ,它会把我们存贮的进度放在一个仓库中并将我们的进度返回到上一次commit时, 当我们使用 git stash pop时就可以把我们的进度返回

关于git stash常见的命令如下:

  • git stash
  • git stash save
  • git stash list
  • git stash pop
  • git stash apply
  • git stash show
  • git stash drop
  • git stash clear

#git stash

保存当前工作进度,会把暂存区和工作区的改动保存起来

#git stash save

git stash save可以用于存储修改.并且将git的工作状态切回到HEAD也就是上一次合法提交上

如果给定具体的文件路径,git stash只会处理路径下的文件.其他的文件不会被存储,其存在一些参数:

  • --keep-index 或者 -k 只会存储为加入 git 管理的文件
  • --include-untracked 为追踪的文件也会被缓存,当前的工作空间会被恢复为完全清空的状态
  • -a 或者 --all 命令可以当前目录下的所有修改,包括被 git 忽略的文件

#git stash list

显示保存进度的列表。也就意味着,git stash命令可以多次执行,当多次使用git stash命令后,栈里会充满未提交的代码,如下:

其中,stash@{0}stash@{1}就是当前stash的名称

#git stash pop

git stash pop 从栈中读取最近一次保存的内容,也就是栈顶的stash会恢复到工作区

也可以通过 git stash pop + stash名字执行恢复哪个stash恢复到当前目录

如果从stash中恢复的内容和当前目录中的内容发生了冲突,则需要手动修复冲突或者创建新的分支来解决冲突

#git stash apply

将堆栈中的内容应用到当前目录,不同于git stash pop,该命令不会将内容从堆栈中删除

也就说该命令能够将堆栈的内容多次应用到工作目录中,适应于多个分支的情况

同样,可以通过git stash apply + stash名字执行恢复哪个stash恢复到当前目录

#git stash show

查看堆栈中最新保存的stash和当前目录的差异

通过使用git stash show -p查看详细的不同

通过使用git stash show stash@{1}查看指定的stash和当前目录差异

#git stash drop

git stash drop + stash名称表示从堆栈中移除某个指定的 stash

#git stash clear

删除所有存储的进度