前端JavaScript面试技巧-笔记

基础知识:
 原型 原型链
 作用域 闭包
 异步 单线程

JS-Web-API:
 DOM操作
 Ajax
 事件绑定

开发环境:
 版本管理
 模块化
 打包工具

运行环境:
 页面渲染
 性能优化

几道面试题

  1. JS中使用typeof能得到哪些类型?(考点:JS变量类型)
  2. 何时使用(3等号)何时使用==?(考点:强制类型转换)
  3. window.onload和DOMContentLoaded的区别?(考点:浏览器渲染过程)
  4. 用JS创造10个a标签,点击时弹出对应的序号(考点:作用域)
  5. 简述如何实现一个模块加载器,实现类似require.js的基本功能(考点:JS模块化)
  6. 实现数组的随机排序(考点:JS基础算法)

变量类型和计算
 题目
 知识点
 解答

题目:

  1. JS中使用typeof能得到哪些类型
  2. 何时使用(3等号)何时使用==
  3. JS中有哪些内置函数
  4. JS变量按照存储方式区分为哪些类型,并描述其特点
  5. 如何理解JSON

知识点:
 变量类型
 变量计算

变量类型:
 值类型vs引用类型
 typeof运算符详解

值类型:
在这里插入图片描述
引用类型:对象、数组、函数
在这里插入图片描述
typeof运算符详解
在这里插入图片描述
 typeof能够区分值类型,不能区分引用类型
 对象和数组typeof结果都是object,函数是function
 null的结果也是object

变量计算-强制类型转换
 字符拼接
 ==运算符
 if语句
 逻辑运算
字符拼接
在这里插入图片描述
==运算符
在这里插入图片描述
if语句
在这里插入图片描述
逻辑运算
在这里插入图片描述
10转换成true,再与上0,结果是0
‘ ’转换成false,在并上’abc’,还是’abc’

问题1:JS中使用typeof能得到哪些类型
在这里插入图片描述

问题2:何时使用(3等号)何时使用==
在这里插入图片描述
问题3:JS中有哪些内置函数
在这里插入图片描述
问题4:JS变量按照存储方式区分为哪些类型,并描述其特点
在这里插入图片描述
问题5:如何理解JSON
在这里插入图片描述


原型和原型链
 题目
 知识点
 解答

题目:

  1. 如何准确判断一个变量是数组类型
  2. 写一个原型链继承的例子
  3. 描述new一个对象的过程
  4. Zepto(或其他框架)源码中是如何使用原型链

知识点:
 构造函数
 构造函数-扩展
 原型规则和示例
 原型链
 instanceof

构造函数 在这里插入图片描述
构造函数-扩展
在这里插入图片描述
原型规则和示例
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
原型链

循环对象自身的属性
在这里插入图片描述
在这里插入图片描述

instanceof
instanceof用于判断引用类型属于哪个构造函数的方法
在这里插入图片描述

问题1:如何准确判断一个变量是数组类型
在这里插入图片描述
问题2:写一个原型链继承的例子
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
问题3:描述new一个对象的过程
在这里插入图片描述

问题4:Zepto(或其他框架)源码中是如何使用原型链
在这里插入图片描述


作用域和闭包
 题目
 知识点
 解答

题目:

  1. 说一下对变量提升的理解
  2. 说明this几种不同的使用场景
  3. 创建10个标签,点击的时候弹出来对应的序号
  4. 如何理解作用域
  5. 实际开发中闭包的作用

知识点:
 执行上下文
 this
 作用域
 作用域链
 闭包

执行上下文
在这里插入图片描述
在这里插入图片描述
this
this要在执行时才能确认值,定义时无法确定
在这里插入图片描述
在这里插入图片描述
作为构造函数执行
在这里插入图片描述
作为对象属性执行
在这里插入图片描述
作为普通函数执行
在这里插入图片描述
call apply bind
在这里插入图片描述

作用域
在这里插入图片描述
在这里插入图片描述
作用域链
在这里插入图片描述
在这里插入图片描述
闭包

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
问题1:说一下对变量提升的理解
在这里插入图片描述
问题2:说明this几种不同的使用场景
在这里插入图片描述
问题3:创建10个标签,点击的时候弹出来对应的序号
在这里插入图片描述
For循环结束后,开始监听事件,这里alert(i)中的i是自由变量,到其父作用域中找,此时i=10.所以点击弹出来的都是10.
在这里插入图片描述
问题4:如何理解作用域
在这里插入图片描述
问题5:实际开发中闭包的作用
在这里插入图片描述
_list不会被外部随意修改
在这里插入图片描述


异步和单线程
 题目
 知识点
 解答

题目:

  1. 同步和异步的区别是什么?分别举一个同步和异步的例子
  2. 一个关于setTimeout的笔试题
  3. 前端使用异步的场景有哪些

知识点:
 什么是异步(对比同步)
 前端使用异步的场景
 异步和单线程

什么是异步(对比同步)
在这里插入图片描述
在这里插入图片描述
前端使用异步的场景
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

异步和单线程
在这里插入图片描述
问题1:同步和异步的区别是什么?分别举一个同步和异步的例子
在这里插入图片描述
问题2:一个关于setTimeout的笔试题
在这里插入图片描述
1,3,5,2,4
问题3:前端使用异步的场景有哪些
在这里插入图片描述


其他知识
 题目
 知识点
 解答

题目

  1. 获取2017-06-10格式的日期
  2. 获取随机数,要求长度一致的字符串格式
  3. 写一个能遍历对象和数组的通用forEach函数

知识点
 日期
 Math
 数组API
 对象API

日期
在这里插入图片描述
Math
在这里插入图片描述
数组API
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

对象API
在这里插入图片描述

问题1:获取2017-06-10格式的日期
在这里插入图片描述
问题2:获取随机数,要求长度一致的字符串格式
在这里插入图片描述
问题3:写一个能遍历对象和数组的通用forEach函数

在这里插入图片描述


JS-Web-API

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

DOM操作
Document Object Model
 题目
 知识点
 解答

题目:

  1. DOM是哪种基本的数据结构?
  2. DOM操作的常用API有哪些?
  3. DOM节点的attr和property有何区别?

知识点:
 DOM本质
 DOM节点操作
 DOM结构操作

DOM本质
在这里插入图片描述
DOM节点操作
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
DOM结构操作
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
问题1:DOM是哪种基本的数据结构?
在这里插入图片描述
问题2:DOM操作的常用API有哪些?
在这里插入图片描述
问题3:DOM节点的attr和property有何区别?
在这里插入图片描述


BOM操作
Browser Object Model
 题目
 知识点
 解答

题目:

  1. 如何检测浏览器的类型
  2. 拆解url的个部分

知识点:
 Navigator
 Screen
 Location
 History
在这里插入图片描述
在这里插入图片描述

问题1:如何检测浏览器的类型
在这里插入图片描述
问题2:拆解url的个部分
在这里插入图片描述


事件

 题目
 知识点
 解答

题目:

  1. 编写一个通用的事件监听函数
  2. 描述事件冒泡流程
  3. 对于一个无限下拉加载图片的页面,如何给每个图片绑定事件

知识点:
 通用事件绑定
 事件冒泡
 代理

通用事件绑定
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
事件冒泡
在这里插入图片描述
代理

在这里插入图片描述

问题1:编写一个通用的事件监听函数
在这里插入图片描述
问题2:描述事件冒泡流程
在这里插入图片描述
问题3:对于一个无限下拉加载图片的页面,如何给每个图片绑定事件
在这里插入图片描述


Ajax
 题目
 知识点
 解答

题目:

  1. 手动编写一个ajax,不依赖第三方库
  2. 跨域的几种实现方式

知识点:
 XMLHttpRequest
 状态码说明
 跨域

XMLHttpRequest
在这里插入图片描述
在这里插入图片描述

状态码说明
在这里插入图片描述
在这里插入图片描述
跨域
 什么是跨域
 JSONP
 服务器端设置http header
什么是跨域
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

JSONP
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

服务器端设置http header

在这里插入图片描述
在这里插入图片描述
手动编写一个ajax,不依赖第三方库
在这里插入图片描述
跨域的几种实现方式
在这里插入图片描述


存储

 题目
 知识点
 解答

题目
在这里插入图片描述
知识点
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
关于开发环境
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


模块化

本身就是一个面试的题目

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
运行环境

在这里插入图片描述
在这里插入图片描述

页面加载过程
 题目
 知识点
 解答
题目

在这里插入图片描述
知识点
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
解答

在这里插入图片描述
在这里插入图片描述
性能优化
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

几个示例

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
安全性
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
简历

在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值