前端开发面试题收集 JS
前端开发面试题收集-JS篇
收集经典的前端开发面试题
setTimeout的时间定义为0有什么用?
- javascript引擎是单线程处理任务的,它把任务放在队列中,不会同步执行,必须在完成一个任务后才开始另一个任务。
- 由于setTimeout可以把任务从某个队列中跳出成为新队列,因此能够得到期望的结果。
怎么理解this
- this指向的总是调用函数的那个对象。
- this一般情况下,是全局对象Global。
什么是闭包
- 闭包是一个概念,我的理解是函数里的函数,能够读取函数内部变量的函数。
- 就是将函数内部和函数外部连接起来的一座桥梁。
- 闭包是不被内存回收机制回收的。
“use strict”有什么作用?
- 严格模式会抛出更多错误,从而发现潜在问题。
- 会禁止某些不稳定的特性,例如去除with关键字,this不再默认指向全局等。
new操作符做了什么工作?
- 创建了一个空对象,并且this变量引用此对象,同时继承了该函数的原型。
- 属性和方法被加入到this引用的对象中。
- 新创建的对象由this引用,并且最后返回this。
延迟加载JS的方式有哪些?
- defer和async
- 动态创建dom
原型继承的原理
- 当查找一个对象的属性时,javascript会向上遍历原型链,直到找到给定名称的属性为止。
什么是AJAX
- AJAX是指一种创建交互式网页应用的开发技术。
- AJAX可以在无需刷新页面的情况下与发起与后端的请求。
什么是跨域,如何做到?
- 基于安全考虑,浏览器只允许javascript访问相同域名下的文档。
- 解决跨域都需要服务端配合。
- JSONP
- 创建一条script标签请求,并带上参数请求后端。
- 后端根据相应的参数包装一个带所需数据的JS函数返回给前端。
- 缺点是只能发出get请求,并难于确定请求是否成功。
- web sockets
- web sockets会发送一个http请求到后端,获取响应后协议会升级为 web socket协议,不受跨域限制。
- 缺点是只有现代浏览器支持。
- CORS
- 后端在头信息中设置允许接收请求的域名即可。
- 缺点是只有现代浏览器支持。
javascript继承有哪些方式?
- 对象冒充
- 原型链
- call
- apply
cookie是什么?都有哪些属性?
- cookie是浏览器提供的一种机制,保存在用户硬盘上,可以在客户端与服务端之间传送。
- 属性有:
- expires 有效时间
- path 能够读取cookie的顶级目录
- domain 创建cookie所在网页所拥有的域名
- secure 默认是false,如果为true,cookie的传输协议需要为https。
怎么添加、移除、移动、复制、创建和查找节点?
- 添加:
- append
- prepend
- after
- before
- 移除
- remove
- empty
- 替换
- replaceWith
- replaceAll
- 复制
- clone
创建 - creatElement
- createTextNode
查找 - getElementById
- getElementsByTagName
- getElementByName
- clone
前端开发面试题收集 JS的更多相关文章
- 前端开发面试题收集(js部分)
1.问:js中"1"+2+"3"+4 运算结果是? 答: js中,字符串和数值相加,得到的还是字符串,这里的结果1234也是字符串. 2.问:4+3+2+&qu ...
- 前端开发面试题收集(html部分)
1.问:<keygen>是正确的HTML5标签吗? 答:是. <keygen> 标签规定用于表单的密钥对生成器字段.当提交表单时,私钥存储在本地,公钥发送到服务器. 2.问:& ...
- 前端开发面试题收集(css部分)
http://davidshariff.com/quiz/ 做了下这里面前端开发面试的题,发现有些不会,所以在此做个整理以供自己学习,参考,总结. 1.问: CSS属性是否区分大小写? ul { Ma ...
- 前端开发面试题收集 HTML
Doctype是什么?说明特点. <!doctype>声明必须处于HTML文档的头部,在标签之前. <!doctype>声明不是一个HTML标签,是一个用于告诉浏览器使用哪种H ...
- 淘宝网前端开发面试题(二)--JS 面试题
所有答案仅供参考,不负责答案对错(^_^) 1.js 是什么,js 和 html 的开发如何结合? js是javascript的缩写,是一种基于对象的.事件驱动的脚本语言.它一共由三个部分组成:分别是 ...
- 前端开发面试题收集 css
什么是CSS盒子模型 页面上的每个元素都被浏览器看做是一个矩形的盒子. 由内容.填充.边框.边界组成. 什么是 css sprite 将多个图片拼接在一个图片中,通过background-positi ...
- 【理论面试篇】收集整理来自网络上的一些常见的 经典前端、H5面试题 Web前端开发面试题
##2017.10.30收集 面试技巧 5.1 面试形式 1) 一般而言,小公司做笔试题:大公司面谈项目经验:做地图的一定考算法 2) 面试官喜欢什么样的人 ü 技术好. ...
- 前端开发面试题-HTML(转载)
本文由 本文的原作者markyun 收集总结了一些前端面试题,初学者阅后也要用心钻研其中的原理,重要知识需要系统学习.透彻学习,形成自己的知识链.万不可投机取巧,临时抱佛脚只求面试侥幸混过关是错误的! ...
- 前端开发面试题-JavaScript(转载)
本文由 本文的原作者markyun 收集总结. 介绍js的基本数据类型. Undefined.Null.Boolean.Number.String. ECMAScript 2015 新增:Symbol ...
随机推荐
- linux学习笔记之线程同步机制
一.基础知识. 1:线程同步机制:互斥量,读写锁,条件变量,自旋锁,屏障. 1,互斥量:每个进程访问被互斥量保护的资源时,都需要先对互斥量进行判断. 1)互斥量重要属性:进程共享属性,健壮属性,类型属 ...
- 【典型错误】The type java.lang.Object cannot be resolved.
参考:http://blog.csdn.net/wo519074786/article/details/7697967 The type java.lang.Object cannot be reso ...
- windows中path环境变量即时生效
修改PATH后,打来CMD命令行,输入 “set PATH=C” (不会真的改变PATH变量值,但会重新读取一次PATH值),关掉CMD窗口再打开.OK 不放心可以 echo %PATH% 检视一下.
- Django学习(四) Django提供的后台管理系统以及如何定义URL路由
一旦你建立了模型Models,那么Django就可以为你创建一个专业的,可以提供给生成用的后台管理站点.这个站点可以提供给有权限的人进行已有模型Models数据的增删改查. 将新建的模型Models是 ...
- 【STL】算法 — partial_sort
partial_sort接受一个middle迭代器,使序列中的middle-first个最小元素以递增顺序排序.置于[first, middle)内.以下是測试代码: #include <ios ...
- android soundpool 參数说明
SoundPool 类的构造函数例如以下: SoundPool(int maxStreams, int streamType, int srcQuality) 作用:实例化一个SoundPool 实例 ...
- 白话JAVA守护线程
OneCoder(苦逼Coder)原创,转载请务必注明出处: http://www.coderli.com/archives/daemon-thread-plain-words/ 关于“白话”:偶然想 ...
- LinQ学习手册
LinQ : Language Integrated Query(语言集成查询); 1.以统一方式操作各种数据源,减少数据访问的复杂性. 优点在于封装了SQL语句,只对对象进行操作(增删改查),代码量 ...
- (四)Android中Context的理解与使用
一.Context的作用 Context可用于访问全局资源. public class MainActivity extends Activity { private TextView tv; @Ov ...
- 异步消息处理机制——Handler用法
Handler 1. Message Messsge是线程之间传递的消息,它可以在内部携带少量的信息,用于在不同线程之间交换数据,Message的what字段,除此之外还可以使用arg1和arg2字段 ...