摘要:
前端面试题 - NodeJS能用ES6模块吗?CommonJS 和 ES6模块的区别是什么? JS能写前端web,也能写NodeJS。 Node.js 后端应用由模块组成,其模块系统采用 CommonJS 规范,它并不是 JavaScript 语言规范的正式组成部分。 前端的模块系统则采用ES6模块 阅读全文
摘要:
前端面试题 - 说说CSS渐变? CSS3 Gradient 分为 linear-gradient(线性渐变)和 radial-gradient(径向渐变)。 参数:其共有三个参数,第一个参数表示线性渐变的方向,top 是从上到下、left 是从左到右,如果定义成 left top,那就是从左上角到 阅读全文
摘要:
前端面试题 - JS的垃圾回收机制? 有两种垃圾回收策略: 标记清除:标记阶段即为所有活动对象做上标记,清除阶段则把没有标记(也就是非活动对象)销毁。 引用计数:它把对象是否不再需要简化定义为对象有没有其他对象引用到它。如果没有引用指向该对象(引用计数为 0),对象将被垃圾回收机制回收。 标记清除的 阅读全文
摘要:
前端面试题 - 说一下原型和原型链? JavaScript 中,万物皆对象,对象分为普通对象和函数对象。 所有的函数都是函数对象(typeof f 'function'),其他都是普通对象(typeof o 'object')。 JS在没有类class前,创建一个对象都是通过 new 函数() 来实 阅读全文
摘要:
前端面试题 - 为什么在JS中0.1+0.2!=0.3?以及IEE 754标准 JavaScript使用Number类型表示数字(整数和浮点数),遵循 IEEE 754 标准 通过64位来表示一个数字。 首先,计算机无法直接对十进制的数字进行运算,这是硬件物理特性已经决定的。这样运算就分成了两个部分 阅读全文
摘要:
前端面试题 - 赋值/浅拷贝/深拷贝的区别?如何实现一个深拷贝? 赋值是拷贝的对象指针,整个对象都是共用的。 浅拷贝是拷贝一层,对象的内容仍是共用的,Object.assign(),拓展运算符都是浅拷贝。 深拷贝是递归拷贝深层次,JSON.stringify()是深拷贝,但是会忽略undefined 阅读全文
摘要:
前端面试题 - script 标签中 defer 和 async 的区别? <script> :会阻碍 HTML 解析,只有下载好并执行完脚本才会继续解析 HTML。 <script async> :解析 HTML 过程中进行脚本的异步下载,下载成功立马执行,有可能会阻断 HTML 的解析。 <sc 阅读全文
摘要:
前端面试题·讲一讲什么是URL编码? Url编码通常也被称为百分号编码(Url Encoding),是因为它的编码方式非常简单,使用%百分号加上两位的字符——代表一个字节的十六进制形式。 例如a在US-ASCII码中对应的字节是0x61,那么Url编码之后得到的就是%61。Url编码默认使用的字符集 阅读全文
