> 文章列表 > 一些前端问题

一些前端问题

一些前端问题

1.前端如何进行单元测试

老师解答:

我们平时写代码也肯定写一部分就要运行一下试试,其实这种行为就是单元测试,只是我们把很多自动化的内容,用人肉执行了,并且没有保存和管理 case,也没有统计 code coverage。

只要选择一个好的单元测试框架,单元测试成本其实不高,尤其是比较复杂的底层库,引入单元测试不但不会消耗时间,还会提高效率。所以我认为单元测试要实行,有两个关键点你要格外注意:一是出一套好的单元测试方案,二是在基础库和框架开发中引入单元测试。

2. 关于 Undefined ,如果一个变量没有赋值后面又赋值,这个过程就是“变量会被篡改”的意思么?而 null 为什么又不会被篡改?一个变量开始定义为 null 然后赋值其他数据这个过程不算篡改吗?

undefined 是个全局变量,null 是个关键字

3.前端性能打分包含哪几部分?

图片:检查图片数量和图片大小,比如单个超过 50k,总量超过 400k 的图片就要注意了,如果检查到小图片,也可以建议用 data uri 内联。

请求数:检查请求数,检查是否有独立的 JS、CSS 请求,这些都是潜在的优化点。域名:检查域名是否有在 http dns 的范围内,检查域名数量是否过多,检查资源文件域名是否属于 CDN。

实际加载时间:如果测试环境加载时间过程,也可能说明一些问题。

缓存:检查静态资源是否设置了正确的缓存。

4.大小写的两个属性有什么区别呢

大写的是类,小写的是对象

5.函数调用和函数执行有什么区别? 有没有相应的标准?

我们一般讲“A 函数调用了 B 函数”“浏览器执行了 B 函数”,所以你看,两者的区别是主语不同,你可以感受一下区别。它们对应的标准都是 ECMA262。

极客时间版权所有: https://time.geekbang.org/column/article/96269

6.为什么 flexible 布局方案不再维护了呢?这个方案本身存在问题吗?

不存在问题,但是 rem 计算是个历史方案,现在,我比较推荐大家使用 vw。

7.如果用 let,和用 const 有什么区别,为什么 const 的性能会好一点?

性能好一些完全是乱说的,用 const 的话,可以避免你误把数组整个赋值掉,比较有安全感吧。

此文章为4月Day22学习笔记,内容来源于极客时间《重学前端》