前端面试题总结(持续更新。。)

HTML部分
  1. DOCTYPE的作用?标准模式和兼容模式各有什么区别? 告知浏览器的解析器用说明文档标准来解析这个文档;如果在文档开始处没有发现文档类型声明或者格式不正确将会导致浏览器开启兼容模式。 标准模式以该浏览器支持的最高标准运行;兼容模式以一种宽松的向后兼容的方式显示。
  2. 页面导入样式时,使用link标签和@import标签有什么区别? ①link标签属于html标签,而@import是css提供的。②页面被加载时,link会被同时加载,而@import引用的css会等到页面被加载完在加载。③@import只在ie5以上才能识别,而link是html标签,无兼容问题。④link方式的样式权重高于@import的权重。
  3. html5新的表单元素 datalist、keygen、output
JS部分
  1. js的数据类型 5种基本数据类型:Undefined、Null、Boolean、Number、String 1种复杂数据类型:Object
  2. js有几种类型的值? 两种。 栈:基本数据类型 堆:引用数据类型
  3. 关于this对象 ①this总是指向函数的直接调用者 ②如果有new关键字,this指向触发这个事件的对象,但是,IE中的attachEvent的this总是指向全局对象window
  4. eval()? eval()方法就像是一个完整的ECMAScript解析器,能把对应的字符串解析成js代码并运行。
  5. 事件?IE和Netscape的事件机制有什么区别? IE:事件冒泡 Netscape:事件捕获 DOM事件流:事件捕获阶段-处于目标阶段-事件冒泡阶段(ie8及更早版本不支持DOM事件流)
  6. null与undefined的区别? 在使用var声明变量但为对其初始化时,这个变量就是undefined。 null值表示的是一个空对象的指针。 undefined派生自null,因此它们两者之间相等(==),但是不全等(===)。
  7. 闭包? 闭包是指有权访问另一个函数作用域中的变量的函数。创建闭包的常见方式就是在一个函数内部创建另一个函数。利用闭包可以突破作用域链,将函数内部的变量和方法传递到外部。 特性: ①函数内嵌套函数。②内部函数可以引用外层的参数和变量。③参数和变量不会被垃圾回收机制回收。
  8. javascript代码中的“use strict”是什么意思? 严格模式是为javascript定义了一种不同的解析与执行模型,在严格模式下,浏览器一些不确定的行为将得到处理,而且对某些不安全的操作将抛出错误。
  9. 6个falsy值 空字符串、null、undefined、数字0、数字NaN、布尔值false
  10. new操作符的工作原理? ①新建了一个对象 ②设置原型链(instance.proto = F.prototype) ③让构造函数(F)中的this指向这个实例(instance),执行构造函数。 ④判断构造函数的返回值类型     如果是值类型,就丢弃它,还是返回instance      如果是引用类型,就返回这个引用类型的对象,替换到instance
  11. js异步编程的四种方法 ①回调函数 ②事件监听 ③发布/订阅 ④promise对象
  12. 原型链的构建? 原型链的构建是通过将一个类型的实例赋值给另一个构造函数的原型实现的
  13. 浏览器内核(呈现引擎) Trident:IE Gecko:Firefox Webkit:Safari、Chrome Presto:Opera
  14. HTTP状态码 200:成功 304:表示请求的资源并没有被修改,可以直接使用浏览器缓存的版本 404:找不到与URI相匹配的资源
  15. 数组求和
function sum(arr) {
  var len = arr.length;
  if(len == 0) {
    return 0;
  }else if(len == 1) {
    return arr[0]
  }else {
    return arr[0] + sum(arr.slice(1));
  }
}
CSS部分
  1. css部分选择器的特殊性 id值:0,1,0,0 类属性值/属性选择器/伪类:0,0,1,0 元素和伪元素:0,0,0,1
  2. 为什么要初始化css样式? 兼容浏览器。如果没初始化css样式往往会出现浏览器之间的页面显示差异。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Keegan小钢

Android技术积累:开发规范

上个月发布了Android项目重构的三篇系列文章,其中,界面篇中提到了在项目中保持规范性的重要性,也有简单举了几个例子。这篇文章则将其延伸,提供更完整的开发规范...

13420
来自专栏IT派

Python爬虫库-Beautiful Soup的使用

Beautiful Soup是一个可以从HTML或XML文件中提取数据的Python库,简单来说,它能将HTML的标签文件解析成树形结构,然后方便地获取到指定标...

14930
来自专栏web前端

JavaScript基础学习--05自定义属性、索引值

一、自定义属性      1、读写操作 <input abc="123" type="button" value="按钮" /> ==============...

20570
来自专栏Brian

Python进阶教程(三)

Python 进阶 我们在Python进阶教程(二),介绍了一些Python进阶用法。今天给大家介绍的是和c/c++混合编程的用法。我们都知道特别是Python...

38140
来自专栏IT派

Python爬虫库-BeautifulSoup的使用

Beautiful Soup是一个可以从HTML或XML文件中提取数据的Python库,简单来说,它能将HTML的标签文件解析成树形结构,然后方便地获取到指定标...

10230
来自专栏Golang语言社区

深入解析 Go 中 Slice 底层实现

切片是 Go 中的一种基本的数据结构,使用这种结构可以用来管理数据集合。切片的设计想法是由动态数组概念而来,为了开发者可以更加方便的使一个数据结构可以自动增加和...

11920
来自专栏desperate633

我的javascript学习之路_01之js基础1JavaScript的简介JavaScript的使用JavaScript输出javascript语句JavaScript注释JavaScript变量J

近期开始接触学习extjs框架。该框架是基于JavaScript的。为了更好地理解学习extjs,必然需要先对JavaScript有一个较好的理解。

7920
来自专栏无所事事者爱嘲笑

vue要点记录(待更新)

18030
来自专栏JAVA后端开发

vue解决字段类型为数字导致单选不正确的问题

最近在研究vue,也试着写一些Vue页面。 vue中,我返回一个值,"sex":0, 单选框代码为

75540
来自专栏柠檬先生

VUE 入门基础(3)

三,模板语法   Vue将模板编译成虚拟DOM渲染函数,结合响应系统,在应用状态改变时,vue能够智能地计算出重新渲染组件的最小代价并DOM操作上。   插值,...

23560

扫码关注云+社区

领取腾讯云代金券