美文网首页
常见技术问题及答案(一)

常见技术问题及答案(一)

作者: Z_the | 来源:发表于2019-04-09 14:21 被阅读0次

    一、用CSS实现右边宽度固定,左边自适应

    <style type="text/css">

    .box{

    display:flex;

    }

    .left{

    width: calc(100% - 200px);

    height: 300px;

    background: blue;

    }

    .right{

    width:200px;

    height: 300px;

    background: red;

    }

    </style>

    二、介绍一下webpack和gulp,以及项目中具体的使用

    gulp:是工具链、构建工具,可以配合各种插件做js压缩,css压缩,less编译 替代手工实现自动化工作

    (1)构建工具

    (2)自动化

    (3)用于:提高效率——能够优化前端工作流程,提高工作效率

    (4)自动刷新页面,雪碧图,压缩css、js,编译less,检查语法等

    (5)使用gulp可以配置你需要的插件,把以前需要手工做的事情让它帮你做了

    webpack:是文件打包工具,可以把项目的各种js文、css文件等打包合并成一个或多个文件,主要用于模块化方案,预编译模块的方案

    (1)打包工具

    (2)模块化识别

    (3)用于:编译模块代码方案

    总结:两者不是一个工具,不具有可比性,更不冲突

    三、父子两元素同时绑定2个click事件,一个在冒泡阶段执行,一个在捕获阶段执行,执行的顺序是什么?

    w3c规定了,任何发生在w3c事件模型中的事件,首是进入捕获阶段,直到达到目标元素,再进入冒泡阶段。addEventListener里面说了,false是默认的,表示的就是冒泡。捕获是从大到小,冒泡是从小到大。

    绑定在被点击元素的事件是按照代码的顺序发生的,其他非绑定的元素则是通过冒泡或者捕获的触发。按照W3C的标准,先发生捕获事件,后发生冒泡事件。所以事件的整体顺序是:非目标元素捕获 -> 目标元素代码顺序 -> 非目标元素冒泡。

    四、对Node的优点和缺点有什么自己的看法?

    优点:

       1. 采用事件驱动,异步编程,为网络服务而设计。

       2. node.js非阻塞模式的IO处理给node.js带来在相对较低的资源耗用下的高性能与出众的负载能力。

       3. node.js轻量高效,可以认为是数据密集型实时应用系统的完美解决方案。

       4. js语言适合前端工程师上手。

       5. 社区活跃发展速度快。

    缺点:

       1. 单线程,单进程,只支持单核CPU,不能充分的利用多核CPU服务器。

       2. 对程序员要求高一旦进程崩溃,那么整个web服务器就崩溃了。

       3. 不适合做复杂性很高的计算。

    五、哪些操作会造成内存泄露?

    内存泄漏:指一块被分配的内存既不能使用,又不能回收,直到浏览器进程结束。

    (1)JS的回收机制

    (2)标记清除

    function test(){

    var a=10;//被标记,进入环境

    var b=20;//被标记,进入环境

    }

    test();//执行完毕之后a、b又被标记离开环境,被回收

    (3)意外的全局变量引起的内存泄露

    (4)闭包引起的内存泄露

    相关文章

      网友评论

          本文标题:常见技术问题及答案(一)

          本文链接:https://www.haomeiwen.com/subject/icmbiqtx.html