js面试题

1.简述同步和异步的区别

2.怎么添加、移除、复制、创建、和查找节点

3.实现一个函数clone 可以对Javascript中的五种主要数据类型(Number、string、Object、Array、Boolean)进行复制

4.数组去重方法12种方法

5.写一个返回闭包的函数

(1)首先知道什么是闭包?

闭包就是能够读取其他函数内部变量的函数。

6.使用递归完成1到100的累加(递归就是“自己调用自己”)

7.Javascript有哪几种数据类型

1,基本类型:字符串类型(string),数字类型(number),布尔类型(boolean)

2,复杂类型:数组类型(array),对象类型(object),函数类型(function),正则类型(regexp)

3,空类型:undefine  和 null

8.如何判断数据类型typeof

9.console.log(1+'2')和console.log(1-'2')的打印结果

第一个结果是字符串12,第二个结果是数值型-1

10.Js的事件委托是什么,原理是什么(首先要知道-事件委托就是利用事件冒泡)

11.如何改变函数内部的this指针的指向

12.列举几种解决跨域问题的方式,且说明原理

20.new操作符具体干了什么

21.Ajax原理

22.模块化开发怎么做

23.异步加载Js的方式有哪些

24.xml和 json的区别

25.webpack如何实现打包的

26.常见web安全及防护原理

27.用过哪些设计模式

28.为什么要同源限制

29.offsetWidth/offsetHeight,clientWidth/clientHeight与scrollWidth/scrollHeight的区别

30.javascript有哪些方法定义对象

31.说说你对promise的了解

32.谈谈你对AMD、CMD的理解

33.web开发中会话跟踪的方法有哪些

34.介绍js有哪些内置对象?

35.说几条写JavaScript的基本规范?

36.javascript创建对象的几种方式?

37.eval是做什么的?

38.null,undefined 的区别?

39.[“1”, “2”, “3”].map(parseInt) 答案是多少?

40.javascript 代码中的”use strict”;是什么意思 ? 使用它区别是什么?

41.js延迟加载的方式有哪些?

42.defer和async

43.说说严格模式的限制

44.attribute和property的区别是什么?

45.ECMAScript6 怎么写class么,为什么会出现class这种东西?

46.常见兼容性问题

47.函数防抖节流的原理

48.原始类型有哪几种?null是对象吗?

49.为什么console.log(0.2+0.1==0.3) //false

50.说一下JS中类型转换的规则?

51.深拷贝和浅拷贝的区别?如何实现

52.如何判断this?箭头函数的this是什么

53.== 和 ===的区别

54.什么是闭包

55.JavaScript原型,原型链 ? 有什么特点?

56.typeof()和instanceof()的用法区别

57.什么是变量提升

58.all、apply以及bind函数内部实现是怎么样的

59.为什么会出现setTimeout倒计时误差?如何减少

60.谈谈你对JS执行上下文栈和作用域链的理解

61.new的原理是什么?通过new的方式创建对象和通过字面量创建有什么区别?

62.prototype 和 proto 区别是什么?

63.使用ES5实现一个继承?

64.取数组的最大值(ES5、ES6)

65.ES6新的特性有哪些?

66.promise 有几种状态, Promise 有什么优缺点 ?

67.Promise构造函数是同步还是异步执行,then呢 ?promise如何实现then处理 ?

68.Promise和setTimeout的区别 ?

69.如何实现 Promise.all ?

70.如何实现 Promise.finally ?

71.如何判断img加载完成

72.如何阻止冒泡?

73.如何阻止默认事件?

74.ajax请求时,如何解释json数据

75.json和jsonp的区别?

76.如何用原生js给一个按钮绑定两个onclick事件?

77.拖拽会用到哪些事件

78.document.write和innerHTML的区别

79.jQuery的事件委托方法bind 、live、delegate、on之间有什么区别?

80.浏览器是如何渲染页面的?

81.$(document).ready()方法和window.onload有什么区别?

82. jquery中$.get()提交和$.post()提交有区别吗?

83.对前端路由的理解?前后端路由的区别?

84.手写一个类的继承

85.XMLHttpRequest:XMLHttpRequest.readyState;状态码的意思

86.正则表达式常见面试题

1.给一个连字符串例如:get-element-by-id转化成驼峰形式。

2.匹配二进制数字

3.非零的十进制数字 (有至少一位数字, 但是不能以0开头)

4.匹配一年中的12个月

5.匹配qq号最长为13为

6.匹配常见的固定电话号码

7.匹配ip地址

8.匹配用尖括号括起来的以a开头的字符串

9.分割数字每三个以一个逗号划分

10.判断字符串是否包含数字

11.判断电话号码

12.判断是否符合指定格式

13.判断是否符合USD格式

14.JS实现千位分隔符

15.获取 url 参数

16.验证邮箱

17.验证身份证号码

18.匹配汉字

19.去除首尾的'/'

20.判断日期格式是否符合 '2017-05-11'的形式,简单判断,只判断格式

21.判断日期格式是否符合 '2017-05-11'的形式,严格判断(比较复杂)

22.IPv4地址正则

23.十六进制颜色正则

24.车牌号正则

25.过滤HTML标签

26.密码强度正则,最少6位,包括至少1个大写字母,1个小写字母,1个数字,1个特殊字符

27.URL正则

28.匹配浮点数

浏览器/html/css面试题

1.什么是盒模型

2.行内元素有哪些?块级元素有哪些? 空(void)元素有那些?行内元素和块级元素有什么区别?

3.简述src和href的区别

4.什么是css Hack

5.什么叫优雅降级和渐进增强

6.px和em的区别

7.HTML5 为什么只写

8.Http的状态码有哪些

9.一次完整的HTTP事务是怎么一个过程

10.HTTPS是如何实现加密

11.浏览器是如何渲染页面的

12.浏览器的内核有哪些?分别有什么代表的浏览器

13.页面导入时,使用link和@import有什么区别

14.如何优化图像,图像格式的区别

15.列举你了解Html5. Css3 新特性

16.可以通过哪些方法优化css3 animation渲染

17.列举几个前端性能方面的优化

18.如何实现同一个浏览器多个标签页之间的通信

19.浏览器的存储技术有哪些

20.css定位方式

21.尽可能多的写出浏览器兼容性问题

22.垂直上下居中的方法

23.响应式布局原理

25.清除浮动的方法

26.http协议和tcp协议

27.刷新页面,js请求一般会有哪些地方有缓存处理

28.如何对网站的文件和资源进行优化

29.你对网页标准和W3C重要性的理解

30.Http和https的区别

31.data-属性的作用

32.如何让Chrome浏览器显示小于12px的文字

33.哪些操作会引起页面回流(Reflow)

34.CSS预处理器的比较less sass

35.如何实现页面每次打开时清除本页缓存

36.什么是Virtual DOM,为何要用Virtual DOM

37.伪元素和伪类的区别

38.http的几种请求方法和区别

39.前端需要注意哪些SEO

40.的title和alt有什么区别

41.从浏览器地址栏输入url到显示页面的步骤

42.如何进行网站性能优化

43.语义化的理解

44.HTML5的离线储存怎么使用,工作原理能不能解释一下?

45.浏览器是怎么对HTML5的离线储存资源进行管理和加载的呢

46.iframe有那些缺点?

47.WEB标准以及W3C标准是什么?

48.Doctype作用? 严格模式与混杂模式如何区分?它们有何意义?

49.HTML全局属性(global attribute)有哪些

50.Canvas和SVG有什么区别?

51.如何在页面上实现一个圆形的可点击区域?

52.网页验证码是干嘛的,是为了解决什么安全问题

53.请描述一下 cookies,sessionStorage 和 localStorage 的区别?

54. CSS选择器有哪些?哪些属性可以继承?

55.CSS优先级算法如何计算?

56.CSS3有哪些新特性?

57.请解释一下CSS3的flexbox(弹性盒布局模型),以及适用场景?

58.用纯CSS创建一个三角形的原理是什么?

59.常见的兼容性问题?

60.为什么要初始化CSS样式

61.absolute的containing block计算方式跟正常流有什么不同?

62.CSS里的visibility属性有个collapse属性值?在不同浏览器下以后什么区别?

63.display:none与visibility:hidden的区别?

64.position跟display、overflow、float这些特性相互叠加后会怎么样?

65.对BFC规范(块级格式化上下文:block formatting context)的理解?

66.为什么会出现浮动和什么时候需要清除浮动?清除浮动的方式?

67.上下margin重合的问题

68. 设置元素浮动后,该元素的display值是多少?

69.移动端的布局用过媒体查询吗?

70.CSS优化、提高性能的方法有哪些?

71.浏览器是怎样解析CSS选择器的?

72.在网页中的应该使用奇数还是偶数的字体?为什么呢?

73.margin和padding分别适合什么场景使用?

74.元素竖向的百分比设定是相对于容器的高度吗?

75.全屏滚动的原理是什么?用到了CSS的哪些属性?

76.什么是响应式设计?响应式设计的基本原理是什么?如何兼容低版本的IE?

77. 视差滚动效果?

78.::before 和 :after中双冒号和单冒号有什么区别?解释一下这2个伪元素的作用

79.让页面里的字体变清晰,变细用CSS怎么做?

80. position:fixed;在android下无效怎么处理?

81.如果需要手动写动画,你认为最小时间间隔是多久,为什么?

82.li与li之间有看不见的空白间隔是什么原因引起的?有什么解决办法?

83.display:inline-block 什么时候会显示间隙?

84. 有一个高度自适应的div,里面有两个div,一个高度100px,希望另一个填满剩下的高度

85.png、jpg、gif 这些图片格式解释一下,分别什么时候用。有没有了解过webp?

86.style标签写在body后与body前有什么区别?

87.CSS属性overflow属性定义溢出元素内容区的内容会如何处理?

88.阐述一下CSS Sprites

89. 一行或多行文本超出隐藏

js常用插件

轮播图插件

二级城市插件

三级城市插件

文字滑动效果

手风琴效果

视频播放插件

弹层插件

百度编辑器

ACE编辑器(轻巧)

上传图片(裁剪)

页面加载效果

全选反选各种效果

京东楼层效果

懒加载

移动端热点问题

1. 1px border问题

2.2X图 3X图适配

3.图片在安卓上,有些设备模糊问题

4.固定定位布局 键盘挡住输入框内容

5.click的300ms延迟问题和点击穿透问题

6.phone及ipad下输入框默认内阴影

7.防止手机中页面放大和缩小

8.flex布局

9.px、em、rem、%、vw、vh、vm这些单位的区别

10. 移动端适配- dpr浅析

11.移动端扩展点击区域

12 上下拉动滚动条时卡顿、慢

13 长时间按住页面出现闪退

14. ios和android下触摸元素时出现半透明灰色遮罩

15. active兼容处理 即 伪类:active失效

16.webkit mask兼容处理

17. pc端与移动端字体大小的问题

18. transiton闪屏

19.圆角bug

20.如何解决禁用表单后移动端样式不统一问题?

ES6编程题

1.使用解构,实现两个变量的值的交换

2.利用数组推导,计算出数组 [1,2,3,4] 每一个元素的平方并组成新的数组。

3.使用ES6改下面的模板

4.把以下代码使用两种方法,来依次输出0到9?

js 对一个字段去重_js面试相关推荐

  1. js 对一个字段去重_JS单行、多行文本字符去重和行去重

    之前偶然看到一篇使用正则实现字符去重及多行去重的文章.感觉写的有点糙,而且性能也不够高,对新手的使用和理解都有一点难度.于是忍不住就搞了一个比较可爱的出来.而且不是一般的可爱,因为随着字符量的增长,其 ...

  2. js 对一个字段去重_js正则去重及(?=)的匹配规则

    今天首先要讲的是如何利用正则去重复,例如有一串字符串'122345333',如何去其中的重复元素? var str='122345333'; while((str!=(str=str.replace( ...

  3. 字符串拼接后分割再去重java_oracle 一个字段去重得到不重复航司

    需求: 今天要统计有有多少家航司数据?要去重 描述: 但是这个字段存的是 以斜杠进行分割的数据 分析: 每个字段都存在重复,或者不重复.整体思想, 1.先在oracle去重,然后以/拼接 2.在jav ...

  4. js最简单数组去重_js数组去重最常用的5种方法

    今天来聊一聊js数组去重的一些方法,包括一些网上看到的和自己总结的,总共5种方法,希望对大家有帮助. 第一种:遍历数组法 这种方法最简单最直观,也最容易理解,代码如下: 这种方法很好理解,利用了ind ...

  5. java list 字段去重_java list 根据对象一个字段去重

    1.主要思路就是根据从写equals 以及 hashCode 方法. 代码如下: package com.bfd.unibase.modules.dataview.entity; import org ...

  6. js最简单数组去重_js简单数组去重

    demo1: function uniqArray(array){ return [...new Set(array)] } demo2: function uniqArray(array){ var ...

  7. 数组转集合,集合去重, 删除对象List某个属性值为空的对象,MySql根据某一字段去重

    集合和数组的几个问题 一.数组怎么转集合 二.集合去重怎么做? 三.删除对象集合里,某个属性为空的对象 四.数据库查询数据如何按某一个字段去重 一.数组怎么转集合 String [] strArr = ...

  8. js给对象添加变量属性 js 更改对象中的属性名 数组对象中每个对象添加一个字段-map用法和forEarch用法

    js给对象添加变量属性 & js 更改对象中的属性名 & 数组对象中每个对象添加一个字段-map用法和forEarch用法 1.js给对象添加变量属性 1.js创建一个对象或者在原有对 ...

  9. lodash.js - 根据不同字段筛选出的数组 转 对象 转 数组

    先来看[原始数组]和[最终数组]对比: 标题有点绕,总的来说,是一个数组,根据以下步骤拆解: ①    根据两个不同字段 "label" ."type" 分别做 ...

最新文章

  1. 认识Backbone (五)
  2. 【springmvc+mybatis项目实战】杰信商贸-16.新增从表货物信息
  3. springboot去掉git版本控制_关于 Git 提交这些规范,你都遵守了吗?
  4. php程序员可能不了解的编程细节
  5. jeecg-boot自动生成代码_无代码实现销售系统自动判定并生成订单功能
  6. centOS下JDK1.8的安装
  7. 皮卡丘为什么不进化_神奇宝贝:为什么皮卡丘一直不愿意进化?原因竟然是这个!...
  8. Bootstrap_导航
  9. babel 无法解析jsx (webpack react )
  10. 最常用常见通用字体有哪些
  11. 【面试】AI算法工程师---面试题!(第二部分:AI部分)
  12. django_models_外键应用
  13. 数商云:补齐数字化短板,农林牧渔供应链升级执行“三步走”
  14. Wave Arts Tube Saturator for Mac(实时电子管放大器插件) v1.38破解版
  15. 0基础如何自学web前端?如何找工作?
  16. 嵌入式系统测试工具——ETest
  17. 基于STM32F103C8T6与ESP8266的物联网智能温度采集与蓝牙OLED数字钟的设计与实现
  18. @RequestBody是干嘛的,作用是什么?
  19. 微信小程序/vue通过阿里云上传图片
  20. python 中画球体_Matplotlib/basemap:在p的中心绘制一个球体

热门文章

  1. Cisco1100 lic激活+采用U盘方式升级版本
  2. PostGIS 查询某点周围指定范围内的兴趣点
  3. 关于gyp ERR node-gyp gyp ERR node -v错误记录
  4. 信息处理工具计算机.ppt,《现代信息处理工具》PPT课件.ppt
  5. 罗辑思维完成B轮融资 估值13.2亿人民币
  6. Layui表格数据重载(不请求servlet)
  7. 移动应用测试团队的新人培训计划
  8. 三相逆变器双pi控制器参数如何调节_学术简报︱如何解决并网逆变器的重复控制器积分饱和问题?...
  9. 随机实现“泰坦”与“宙斯”之间的模拟交战。说明:本题以希腊神话中宙斯和泰坦间的交战为背景
  10. 崔希凡老师 javaweb day19 customer客户管理系统原型