成长(9/2000)——面试题合集6

js的运行机制

  • js是单线程的。(和用户的操作、用途有关;同一时间做同一事情)

arguments对象是什么

  • arguments是函数参数的集合,它是类数组,有length属性,但没有数组的方法;箭头函数没有arguments对象
  • 如何将arguments转化为数组?
    1.ES6的扩展运算符可以,这根ES6中新增的iterater函数有关
    2.ES6中的Array.form()
    3.ES5的Array.prototy.slice.call(arguments)

为什么在调用这个函数时,代码中的‘b’会变成一个全局变量?

function fun() {
    let a = b = 0; //let a = ( b = 0 ) 
    //函数赋值至右向左
}

哪些操作会造成内存泄漏

  • 闭包
  • 意外的全局变量
  • 被遗忘的定时器
  • 脱离dom的引用

手写map函数

function map (arr, mapCallback) {
    //检验参数
    if ( !Array.isArray(arr) || !arr.length || !typeof mapCallback 
        == 'function') {
        return [];
    } else {
        let result = [];
        for (let i=0, len = arr.length;i < len ; i++) {
            result.push(mapCallback(arr[i], i, arr));
        }
        return result;
    }
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 本文的面试题目是比较新的前端题目,适用于初中级的面试者,题目都是面试中高概率的题,也真诚的希望大家能够找到一个好的...
    前端_java爱好者阅读 608评论 0 0
  • es6总结 往期文章 ES5总结 1.es6简介 回顾javascrip组成:核心(ECMAScript)由ECM...
    理想三旬7阅读 607评论 0 5
  • axios和ajax的区别 axios是通过promise实现对ajax技术的一种封装axios可以运行nodej...
    yimi珊阅读 303评论 0 0
  • 一、HTML 押题 1.(必考) 你是如何理解 HTML 语义化的? 第一种举例:段落用 p,边栏用 aside,...
    allen_tian阅读 434评论 0 0
  • 表情是什么,我认为表情就是表现出来的情绪。表情可以传达很多信息。高兴了当然就笑了,难过就哭了。两者是相互影响密不可...
    Persistenc_6aea阅读 126,268评论 2 7