• 1 网站的资源的文件优化
 尽可能减少http请求次数,将css, js, 图片各自合并文件开启GZip压缩浏览器缓存开启长连接(Keep-Alive)避免重定向指定字符集样式表css置顶,脚本js置底使用 CDN 托管使用AJAX缓存,让网站内容分批加载,局部更新
  • 2 响应式布局和自适应布局的区别
        自适应布局会在网页的头部,加一段代码: <meta name="viewport" content="width=device-width, initial-scale=1" />viewport是网页默认的宽度和高度,上面这行代码的意思是,网页宽度默认等于屏幕宽度(width=device-width),原始缩放比例(initial-scale=1)为1.0,即网页初始大小占屏幕面积的100%。自适应是为了解决如何才能在不同大小的设备上呈现同样的网页响应式的概念应该覆盖了自适应,而且涵盖的内容更多。响应式可以自动识别屏幕宽度、并做出相应调整的网页设计,布局和展示的内容可能会有所变动
  • 3 box-sizing: border-box;的作用
告诉浏览器去理解你设置的边框和内边距的值是包含在width内的
  • 4 .call 和 .apply的区别
 foo.call(this, arg1,arg2,arg3) == foo.apply(this, arguments)==this.foo(arg1, arg2, arg3)call, apply都属于Function.prototype的一个方法,它们的作用一样,只是使用方式不同.
  • 5 null, undefined和undeclared 的区别
 https://www.jianshu.com/p/3adf77175dc9
  • 6 Javascript内置对象、原生对象、宿主对象关系
 原生(本地)对象 (需要 new  例如:Object、Function、Array、RegExp)内置对象(不要NEW  直接引用——只有MATH  GLOBAL 例如isNaN()、parseInt() 这些都是GLOBAL对象的方法)宿主对象(BOM  DOM  &  自定义对象) 其实说白了ECMAScript官方未定义的对象都属于宿主对象,因为其未定义的对象大多数是自己通过ECMAScript程序创建的对象 https://blog.csdn.net/foamflower/article/details/9165691
  • 7  jQuery中的bind(), live(), on(), delegate()
 https://www.cnblogs.com/moonreplace/archive/2012/10/09/2717136.html
  • 8  快速判断一个数是否是2的幂次方,若是,并判断出来是多少次方!
(number & number - 1) == 0
https://blog.csdn.net/Hackbuteer1/article/details/6681157
  • 9    node 单线程 与异步 与并发
  • 10 node怎么解决js嵌套回调问题
  • 11  node怎么解决node.js中的未捕获异常
  • 12  Array.isArray(Array.prototype)  ====> true
  • 13  7 + '2' ===> '72'     7 - '2' ===> 5
  • 14   js的闭包的概念与用途
    //10 个a标签
    var elems = document.getElementsByTagName('a');
    for (var i = 0; i < elems.length; i++) {elems[i].addEventListener('click', function (e) {e.preventDefault();alert('I am link #' + i);}, 'false');
    }

    比较 (自执行 与闭包)

    var elems = document.getElementsByTagName('a');
    for (var i = 0; i < elems.length; i++) {elems[i].addEventListener('click', (function (lockedInIndex) {return function (e) {e.preventDefault();alert('I am link #' + lockedInIndex);};})(i), 'false');
    }
  • 15   什么是Promise 和Callback相比呢
  • 16 下面题的输出
    var length = 10;function fn() {alert(this.length)} var obj = {length: 5,method: function(fn){fn();arguments[0]()}}obj.method(fn);

答案:15  1

具体解释

In the first place, as fn is passed as a parameter to the function method, the scope (this) of the function fn is window. var length = 10; is declared at the window level. It also can be accessed as window.length or length or this.length (when this === window.)
method is bound to Object obj, and obj.method is called with parameters fn. Though method is accepting only one parameter, while invoking it has passed two parameters; the first is a function callback and other is just a number.
When fn() is called inside method, which was passed the function as a parameter at the global level, this.length will have access to var length = 10 (declared globally) not length = 5 as defined in Object obj.
Now, we know that we can access any number of arguments in a JavaScript function using the arguments[] array.
Hence arguments[0]() is nothing but calling fn(). Inside fn now, the scope of this function becomes the arguments array, and logging the length of arguments[] will return 1.
Hence the output will be as above.

---------------------------------------------------以上美团-----------------------------------------------

  • 数字类型转为字符串:

     String(),  '+',   toString(),   toFixed(),  toExponential(),  toPrecision()
  • 看下面代码:

     var scope = 'global';function log() {console.log(arguments)var args = Array.prototype.join.call(arguments, ', ');console.log(args)console.log(this.scope);}var dog= {scope: 'dog',yelp: function() {var scope = 'dog.yelp';log('wow');}};dog.yelp();dog.yelp.call(dog);log.call(dog, 'created');

解析:

一个个看,Array.prototype.join.call(arguments, ', ') 其实 指定的对象上没有join()方法,所以指定到Array.prototype 原型 ,
使用call为其添加join方法,通俗的讲 就是你没有这个技能,但是我(call)教授这个技能,你就有了。类似于arguments.join(',')
https://www.cnblogs.com/zxjwlh/p/6390323.html
  • .call  .apply .bind

https://juejin.im/entry/57eb38b45bbb50005d754341

  • 如何判断一个变量是字符串,判断一个对象是数组?

对象是否是数组:

instanceof [] instanceof Array
constructor [].constructor === Array
Object.prototype.toString.call([]) === '[object Array]'
Array.isArray([])
Array.prototype.isPrototypeOf([]);

变量是否是字符串:

typeof ''===string
''.constructor === String
Object.prototype.toString.call([]) === '[object String]
  • js如何实现面向对象和继承机制:
https://github.com/norfish/blog/wiki/%E6%B7%B1%E5%85%A5%E7%90%86
%E8%A7%A3JavaScrip%E9%9D%A2%E5%90%91%E5%AF%B9%E8%B1%A1%E5%92%8C%E5%8E%9F%E5%9E%8B%E7%BB%A7%E6%89%BF
http://www.ruanyifeng.com/blog/2011/06/designing_ideas_of_inheritance_mechanism_in_javascript.html
  • js机制 之 冒泡 捕获 传播 和 委托
https://www.cnblogs.com/bfgis/p/5460191.html
  • js自执行函数
https://www.cnblogs.com/TomXu/archive/2011/12/31/2289423.html
  • js内存泄漏的几种情况
内存泄漏是指不再用到的内存,没有及时释放
意外的全局变量,闭包,未清除dom元素的引用,循环引用,连接:https://blog.csdn.net/meijory/article/details/76839072
  • setTimeout 0
http://www.cnblogs.com/silin6/p/4333999.html
https://segmentfault.com/a/1190000002633108
  • 原型与原型链

js笔试面试题(随意)相关推荐

  1. 测试工程师---笔试面试题

    测试工程师-笔试面试题 文章目录 测试工程师---笔试面试题 前言 一.代码题 二.问答题 前言 目前面试了大大小小很多公司,投的简历也是数不胜数,看的大部分是校招,尽管如此,还是感觉笔试有一些难度, ...

  2. Java内部类详解(使用场景和好处、相关内部类的笔试面试题)

    此篇文章作者为:Matrix海子 出处:http://www.cnblogs.com/dolphin0520/ 最近也是在学习java,看的是<java核心技术卷一>jdk8,看到内部类的 ...

  3. 2014九月十月百度,迅雷,华为,阿里巴巴,最新校招笔试面试题

    九月十月百度,迅雷,华为,阿里巴巴,最新校招笔试面试六十题 题记 本博客自2010年10月11日开通以来,已经帮助了一大批人找到工作,特别是连续三年在每一年的9.10月份陪伴了至少三届毕业生找工作的旅 ...

  4. PHP 笔试 + 面试题

    本章主要介绍常见的 PHP 笔试 + 面试题,包括: 基础及程序题 数据库技术题 综合技术题 项目及设计题 ** 基础及程序题 ** [1] 写一个排序算法,可以是冒泡排序或者是快速排序,假设待排序对 ...

  5. PHP笔试面试题精选

    本次课程主要围绕 PHP 面试和笔试中经常会出现的一些知识点,但是面试官会在笔试题基础上深入扩展,那么你知道如何更好的回答让面试官满意吗?题目收集自腾讯,迅雷,美图等公司的笔试面试题,以及本人面试经历 ...

  6. 2013九月十月百度人搜,阿里巴巴,腾讯华为小米搜狗笔试面试题

    九月十月百度人搜,阿里巴巴,腾讯华为小米搜狗笔试面试八十题 引言 自发表上一篇文章至今(事实上,上篇文章更新了近3个月之久),blog已经停了3个多月,而在那之前,自开博以来的21个月每月都不曾断过. ...

  7. 前端笔试面试题常见问题,5年前端汇总

    这里将收集我做过的所有的前端面试笔试题,并根据自己的理解提供解答,以及一些关于前端找工作方面的经验等. 欢迎拍砖,一起刷题,涨姿势,get新技能,找到好工作. 前端笔试面试题部分 1.md     C ...

  8. BAT及各大互联网公司2014前端笔试面试题:HTML/CSS/JAVASCRIPT

    BAT及各大互联网公司2014前端笔试面试题:HTML/CSS/JAVASCRIPT Html篇: 1.你做的页面在哪些流览器测试过?这些浏览器的内核分别是什么? IE: trident内核 Fire ...

  9. 2021年秋招遇到的前端笔试/面试题

    ** 本文仅用于记录本人2021年秋招遇到的部分前端笔试/面试题,答案仅供参考 ** 1.跳跃游戏 给定一个非负整数数组,你最初位于数组的第一个位置. 数组中的每个元素代表你在该位置可以跳跃的最大长度 ...

最新文章

  1. 学习鸟哥的Linux私房菜笔记(1)——Linux系统入门
  2. RabbitMQ(4) TopicExchange
  3. 2010年IT人士必去的10个网站
  4. qlineedit文本改变时_PyQt5 QLineEdit(单行编辑器) 学习
  5. 下架77天后 小红书恢复上架安卓应用市场
  6. Android8.0、9.0、10.0、11.0的新特性兼容适配代码修改
  7. 数据结构—平衡二叉树
  8. 【Prison Break】第四天(3.31)
  9. 主数据文件损坏(或丢失)情况下,如何备份尾部事务日志.
  10. 商城管理系统源码 商城APP源码 电子商城源码
  11. 零基础学前端难吗?前端好学吗?
  12. 【教程】如何批量获取图片信息,尺寸、大小、路径、文件名,然后导出表格或者txt的文本,下面教你使用方法
  13. 基本Kmeans算法介绍及其实现
  14. 令人愉悦的性能统计分析工具-hiper 【发个copy】
  15. 全球互联网上市公司30强中,中国企业占到三分之一!
  16. 生成二维码 并可以点击下载(多个二维码一起渲染)
  17. 数据结构与算法(较全)
  18. buck同步整流sw点负压问题
  19. Vulkan【2】创建Vulkan实例
  20. 作一个执著的人是幸福和难得的

热门文章

  1. 机器学习10大经典算法详解
  2. 红牛农场JAVA_JAVA内部类与异常类
  3. 使用JIRA管理项目工单
  4. mysql的题目_mysql经典例题
  5. 【笔记】ConcurrentHashMap,保证线程安全,并且效率高
  6. vue-element-admin 默认英文版改回中文版
  7. 微信中扫一扫自动调用手机外部浏览器打开链接下载APP(APK)
  8. 浅谈ajax使用方法
  9. 基于数字电路交通灯信号灯控制系统设计-基于单片机病房温度监测与呼叫系统设计-基于STM32的无线蓝牙心电监护仪系统设计-基于STM32的智能蓝牙温控风扇控制设计-基于STM32的智能温室控制系统设计
  10. 【LeetCode】重复元素相关题目