coder-Tom

一个喜欢代码, 音乐,读书, 跑步, 记录生活的程序员

0%

es6新增数据结构

面试官:你是怎么理解ES6新增Set、Map两种数据结构的?

image-20221122074456512

如果要用一句来描述,我们可以说

Set是一种叫做集合的数据结构,Map是一种叫做字典的数据结构

阅读全文 »

用css画一个蜡烛

你有女朋友吗?

程序员有一个鄙视链, 如下图所示:

image-20221121074112035

所以,要想站在鄙视链的顶端, 就要想办法向上爬, 那么如果是想要突破这种情况的话, 就需要一些骚操作

你是否被人骂自己不够romantic?

阅读全文 »

说说var, let , const的区别

面试官:说说var、let、const之间的区别

image-20221121065028704

一、var

在ES5中,顶层对象的属性和全局变量是等价的,用var声明的变量既是全局变量,也是顶层变量

注意:顶层对象,在浏览器环境指的是window对象,在 Node 指的是global对象

阅读全文 »

我的英语学习方法

在写这篇文章之前, 我先来说说我为什么要学英语

我是一个程序员, 平时经常会看国外的文档, 这些文档基本都是英文的, 所以说, 在没有翻译工具的情况下,尤其是针对于技术文档, 要看懂其中要表达的意思还是很难的, 所以,这就是我学习英语的主要原因

还有一个原因就是, 我喜欢旅游, 更想去国外好好看看, 学英语的目的就是为了交流, 语言嘛, 就是用来交流的嘛,而不是为了考试而学英语, 本人非常不喜欢阅读理解, 绕来绕去的是真没意思

所以, 我会列出我平时学习英语的方法

阅读全文 »

用vue3设计组件

面试官:用Vue3.0 写过组件吗?如果想实现一个 Modal你会怎么设计?

image-20221120074112213

一、组件设计

组件就是把图形、非图形的各种逻辑均抽象为一个统一的概念(组件)来实现开发的模式

阅读全文 »

treeshaking的特性

面试官:说说Vue 3.0中Treeshaking特性?举例说明一下?

image-20221117083332200

一、是什么

1
Tree shaking` 是一种通过清除多余代码方式来优化项目打包体积的技术,专业术语叫 `Dead code elimination

简单来讲,就是在保持代码运行结果不变的前提下,去除无用的代码

阅读全文 »

proxy vs Object.defineProperty

面试官:Vue3.0里为什么要用 Proxy API 替代 defineProperty API ?

image-20221209160323058

一、Object.defineProperty

定义:Object.defineProperty() 方法会直接在一个对象上定义一个新属性,或者修改一个对象的现有属性,并返回此对象

为什么能实现响应式
阅读全文 »

vue3的性能提升体现在哪些方面

面试官:Vue3.0性能提升主要是通过哪几方面体现的?

image-20221114070332595

一、编译阶段

回顾Vue2,我们知道每个组件实例都对应一个 watcher 实例,它会在组件渲染的过程中把用到的数据property记录为依赖,当依赖发生改变,触发setter,则会通知watcher,从而使关联的组件重新渲染

阅读全文 »

vue3设计目标与优化

面试官:Vue3.0的设计目标是什么?做了哪些优化

image-20221112053446984

一、设计目标

不以解决实际业务痛点的更新都是耍流氓,下面我们来列举一下Vue3之前我们或许会面临的问题

  • 随着功能的增长,复杂组件的代码变得越来越难以维护
  • 缺少一种比较「干净」的在多个组件之间提取和复用逻辑的机制
  • 类型推断不够友好
  • bundle的时间太久了

Vue3 经过长达两三年时间的筹备,做了哪些事情?

阅读全文 »