基础           原型  原型链

作用域  闭包

异步  单线程

JS API        DOM操作

AJAX

事件绑定

开发环境    版本管理

模块化

打包工具

运行环境    页面渲染

性能优化

面试题

1.JS中使用 typeof 能得到的哪些类型?

考点:JS变量类型

  • JS中有哪些内置函数
  • JS变量按照存储方式区分为哪些类型,并描述其特点

值类型      内存地址 不会因为赋值而相互干预

引用类型   指针  节省内存空间   可以无限制扩展属性

  • 如何理解JSON

知识点  变量类型  变量计算

变量类型  值类型 VS 引用类型(对象,数组,函数)

typeof 运算符详解

typeof undefined  //undefined
typeof 'abc' //string
typeof 123 //number
typeof true //boolean
typeof {} //object
typeof [] //object
typeof null //object (空的指针,定义了一个位置)
typeof console.log //function /*typeof只能区分值类型的详细类型,对引用类型无能为力,能区分函数*/
/*JS中的内置函数 -- 数据封装类对象*/
Object
Array
Boolean
Number
String
Function
Date
RegExp
Error
/*内置对象*/
Math
JSON
//如何理解JSON
//一种数据格式,JSON只不过是一个JS对象而已 // 2个API
JSON.stringify({a:10,b:20})
JSON.parse('{"a":10,"b":20}') 

2.何时使用 == ,何时使用 === ?

考点:强制类型转换

/* === 中没有类型转换*/
if(obj.a == null){
/*
对象的属性是否存在
这里相当于 obj.a === null || obj.a === undefined ,简写形式
这是jquery 源码中推荐写法
*/
}

 除了这个之外,其他都用 ===  

值类型 会发生类型转换计算的情况

  • 字符串拼接
  • ==运算符
  • if语句
  • 逻辑运算  
/*字符串拼接*/
var a = 100 + 10 //110
var b = 100 + '10' //10010 /*==运算符*/
100 == '100' //true
0 == '' //true
null == undefined //true /*if语句*/
var a=ture
if(a){
// ...
}
var b=100
if(b){
// ...
}
var c=''
if(c){
// ...
}
/*if()里会转成false的集中情况*/
/*0 NaN '' null undefined false*/ /*逻辑运算*/
console.log(10 && 0) //0
console.log('' || 'abc') //abc
console.log(!window.abc) //true //判断一个变量会被当成 true 还是 false
var a=100
console.log(!!a)

3.window.onload 和 DOMContentLoaded 的区别?

考点:浏览器渲染过程

4.用 JS 创建10个 <a> 标签,点击的时候弹出对应的序号

考点:作用域

5.简述如何实现一个模块加载器,实现类似 require.js 的基本功能

考点:JS模块化

6.实现数组的随机排序

考点:JS基础算法

js 面试知识点的更多相关文章

  1. 前端开发面试知识点大纲--摘自jackyWHJ

    前端开发面试知识点大纲:HTML&CSS:    对Web标准的理解.浏览器内核差异.兼容性.hack.CSS基本功:布局.盒子模型.选择器优先级及使用.HTML5.CSS3.移动端适应 Ja ...

  2. Java web 前端面试知识点总结

    经过几家大厂面试,目前成功拿到唯品会offer,分享一下我的面试知识点总结: 耦合性:也称块间联系.指软件系统结构中各模块间相互联系紧密程度的一种度量.模块之间联系越紧密,其耦合性就越强,模块的独立性 ...

  3. Java 面试知识点解析(五)——网络协议篇

    前言: 在遨游了一番 Java Web 的世界之后,发现了自己的一些缺失,所以就着一篇深度好文:知名互联网公司校招 Java 开发岗面试知识点解析 ,来好好的对 Java 知识点进行复习和学习一番,大 ...

  4. web开发前端面试知识点目录整理

    web开发前端面试知识点目录整理 基本功考察 关于Html 1. html语义化标签的理解; 结构化的理解; 能否写出简洁的html结构; SEO优化 2. h5中新增的属性; 如自定义属性data, ...

  5. JS 进阶知识点及常考面试题

    将会学习到一些原理相关的知识,不会解释涉及到的知识点的作用及用法,如果大家对于这些内容还不怎么熟悉,推荐先去学习相关的知识点内容再来学习原理知识. 手写 call.apply 及 bind 函数 涉及 ...

  6. web前端面试知识点整理

    一.HTML5新特性 本地存储 webStorage websocket webworkers新增地理位置等API对css3的支持canvas多媒体标签新增表单元素类型结构标签:header nav ...

  7. 由浅入深,66条JavaScript面试知识点

    前言 我只想面个CV工程师,面试官偏偏让我挑战造火箭工程师,加上今年这个情况更是前后两男,但再难苟且的生活还要继续,饭碗还是要继续找的.在最近的面试中我一直在总结,每次面试回来也都会复盘,下面是我这几 ...

  8. JS重要知识点

    这里列出了一些JS重要知识点(不全面,但自己感觉很重要).彻底理解并掌握这些知识点,对于每个想要深入学习JS的朋友应该都是必须的. 讲解还是以示例代码搭配注释的形式,这里做个小目录: JS代码预解析原 ...

  9. JS重要知识点(转载 学习中。。。)

    这里列出了一些JS重要知识点(不全面,但自己感觉很重要).彻底理解并掌握这些知识点,对于每个想要深入学习JS的朋友应该都是必须的. 讲解还是以示例代码搭配注释的形式,这里做个小目录: JS代码预解析原 ...

随机推荐

  1. js页面路径拼接字符串进行参数传递

    页面路径拼接字符串进行参数传递: 参数传递页面: <style> input,button{ border: 1px solid red; } body { font-size:24px; ...

  2. qt, connect参数,Qt::DirectConnection,Qt::QueuedConnection

    connect用于连接qt的信号和槽,在qt编程过程中不可或缺.它其实有第五个参数,只是一般使用默认值,在满足某些特殊需求的时候可能需要手动设置. Qt::AutoConnection: 默认值,使用 ...

  3. L2-025. 分而治之

    分而治之,各个击破是兵家常用的策略之一.在战争中,我们希望首先攻下敌方的部分城市,使其剩余的城市变成孤立无援,然后再分头各个击破.为此参谋部提供了若干打击方案.本题就请你编写程序,判断每个方案的可行性 ...

  4. 2019/4/2 wen 多态、抽象

  5. jQuery安装和语法

    jQuery是一个JavaScript函数库,可实现HTML元素选取及操作.CSS 操作.HTML事件函数.JavaScript特效和动画.HTML DOM遍历和修改.AJAX等功能. 在html中引 ...

  6. MVC输出缓存(OutputCache参数详解)

    版权声明:本文为博主原创文章,未经博主允许转载随意. https://blog.csdn.net/kebi007/article/details/59199115 1.学习之前你应该知道这些 几乎每个 ...

  7. GDB in Action

    GDB in Action 入门 编译 gcc -g -O0 -o word2vec.c word2vec -g 选项:要求 gcc 编译器保留调试符号信息. -O0 选项表示不优化,从 O1 ~ O ...

  8. D3生成树专题

    这一天不知道怎的上课 竟然我说了两道题正解: 第一题:我写过一篇较详细的博客:https://www.cnblogs.com/Tyouchie/p/10366967.html 第二题:UVA10369 ...

  9. 剑指offer(54)字符流中第一个不重复的数字

    题目描述 请实现一个函数用来找出字符流中第一个只出现一次的字符.例如,当从字符流中只读出前两个字符"go"时,第一个只出现一次的字符是"g".当从该字符流中读出 ...

  10. WinForm中预览Office文件

    WinForm预览Office文档 使用WinForm, WPF, Office组件 原理:使用Office COM组件将Word,Excel转换为XPS文档, 将WPF的DocumentViewer ...