01 2019 档案
摘要:GitHub作为开源仓库,许多开源项目仓库这里,当然不乏十分优秀的,比如Node、V8,我一直比较好奇js源码,像java的话,因为环境是JDK,我们结合IDE很容易就能跳转到其源码内部去查看实现,但是js目前的的解释器和原生代码被放在V8引擎中去,无论是谷歌浏览器、Node,其V8引擎早已经被编译
阅读全文
摘要:有一行语句: 那么问题来了,为什么报错? 我的第一想法就是1是一个基本类型,所以它没有toString方法 嗯,理直气壮 接下来有大佬show me code 这有点小尴尬 我突然想起来之前Java中基本类型与之对应包装类的自动包装和自动拆包 比较一下 ps:由于js中弱类型 所以没法声明变量其类型
阅读全文
摘要:new 操作符做了以下事情: 1.创建一个对象,将对象赋值给this 2.执行构造函数的代码,将构造器中的this.prop属性添加到this上 3.为this对象设置原型为其f.prototype 设置构造函数的constructor指向构造函数本身 4.隐式return this 先证明new
阅读全文
摘要:MVC模式 核心: 1.解耦Model和View,即使得Model可以被不同的展示,比如一批统计数据可以分别用柱状图、饼图表示 2.Controller用来保证Model和View的同步 Model 模型层 负责业务逻辑和数据库交互 View 视图层 展示数据 Controller 控制器 三层架构
阅读全文
摘要:最近面试遇到问如何获取对象全部属性名的方法,总结一下: 对象属性类型分类: 1.ESMAScript分类 数据类型 又分为可枚举和不可枚举类型 访问器类型 2.上下文分类 原型属性 实例属性 1.列举自身但不包括原型的可枚举属性名 Object.keys(obj) 2.列举包括自身不可枚举但不包括原
阅读全文
摘要:mixin报错 解决方案 扩展属性报错 我们现在代码里写一段window,然后用编辑器跳转到其.d.ts文件中去 由于这个接口为全局接口,所以我们可以声明一个同名全局全局接口,TS会帮我们合并 然后我们发现 然后我想把这个axios具体类型挂载上去,当然一想,像下面这样做 然后发现报错了,windo
阅读全文
摘要:社区模块规范: 1.CommonJS规范 规范实现者: NodeJS 服务端 Browserify 浏览器 2.AMD规范 全称 异步模块定义 规范实现者: RequireJS 浏览器 3.CMD规范 通用模块定义 规范实现者: seaJS 服务端和浏览器通用 官方模块规范 1.ESM规范 就是ES
阅读全文