
每日一问
文章平均质量分 74
虎鲸一号
Tough Guy
展开
-
JS 基础 | new 和 Object.create() 有什么区别
起因 在整理原型这部分知识时,发现了两种修改原型的写法,好像并不影响测试结果 function Fruit() { this.type = 'fruit' } function Apple() { this.name = 'apple' } // Apple.prototype = new Fruit() Apple.prototype = Object.create(Fruit.prototype); var a = new Apple() console.log(a instanc原创 2021-03-06 10:20:38 · 320 阅读 · 0 评论 -
JS基础 | 探究块级作用域的前身
为什么需要块级作用域 主要是因为,原有全局作用域和函数作用域的设计会带来一些使用上的问题。 在循环语句中,使用 var 声明的计数变量在循环外也可以使用,变量污染外部函数作用域。 同时,var 变量提升,可重复声明的特点可能导致内部变量覆盖外部变量,引发意料外的错误。 var tmp = 1; function f() { console.log(tmp); if (false) { var tmp = 'test'; } } f(); // undefined原创 2021-02-27 23:31:58 · 156 阅读 · 0 评论 -
Event Loop 探寻记(一)
本期内容的主角为 Event Loop,事件循环 我们将从why,what, how三个角度展开 Why JavaScript 为浏览器脚本语言,主要用于与用户交互,操作DOM(Document Object Model,文档对象模型)。它是单线程的,即同一时间只能做一件事。如设计为多线程,容易出现操作上的冲突,带来复杂的同步问题。 就好比两人同时修改在线文档,一人删除了一句话,一人对修改了句子的一部分 而Event Loop的出现与 JavaScript 单线程的特性有着直接联系。 单线程意味着所有原创 2020-11-02 20:48:31 · 112 阅读 · 0 评论 -
Web | 为什么两个标签实现作用一样,但没有被替代
在看Bootstrap文档时,发现了有些HTML标签实现的是一样的效果,如<del>和<s>,<ins>和<u>。作用效果相似,但却分成了两个标签。 (注:使用时建议先查一下支持情况,如<s> <u>已经不推荐使用) 上述标签主要体现在表示的语义不同 这和一道经典面试题很相近:什么是Web语义化,有什么好处 Web语义化 语...原创 2020-04-15 17:41:41 · 190 阅读 · 0 评论 -
MySQL | 如何理解并解决后端请求数据时间相差八小时
情况描述 数据库中存储的为Date类型的数据 将数据取出后,时间变为2017-09-02T16:00:00.000Z。后端返回给前端的数据与实际数据相差八小时。如果直接截取字符串,就会出现和实际数据相差一天的魔幻情况 原因分析 T, Z分别表示什么意思 T,分隔时间和日期,没有特殊含义 Z,表示为零时区时间 > new Date('2017-09-02T16:00:00.000Z') ...原创 2020-04-15 12:27:33 · 1004 阅读 · 0 评论