8 张脑图入门 JavaScript - 基础面试不倒 转载请注明出处 第一:JavaScript 的变量 第二:JavaScript 运算符 第三:JavaScript 数组 第四:JavaScript 流程语句 第五:JavaScript 字符串函数 第六:JavaScript 函数基础 第七:DOM 基本操作 第八:JavaScript 正则表达式…
11-00.JavaScript高级面试 #前言 一.基础知识: ES 6常用语法:class .module.Promise等 原型高级应用:结合 jQuery 和 zepto 源码 异步全面讲解:从原理到 jQuery 再到 Promise 二.框架原理: 虚拟DOM:存在价值.如何使用.diff算法 MVVM vue:MVVM.vue响应式.模板解析.渲染 组件化 React:组件化.JSX.vdom.setState 三.混合开发: hybrid H5 前端客户端通讯 内容优势 面试官爱…
我知道有很多人不同意这种类型的面试.其实不管你喜不喜欢,你都得接受.尤其当你是自学的,而且要申请第一份工作时.   我估计很多有人其它方法来证明他自己,像Github/ 项目地址可能是非常理想的证明方法,但也别全都指望这些.   好消息是有一些很难的问题,在有限的时间里我没答上来(比如说Event Loop和杨辉三角),一些其它面试侯选人也承认他们也没答上来,这会让讨论变得轻松很多.   坏消息是有些面试之后就没有任何反馈了.有三家公司再也没联系过.这点击打击自信,而且没有受到尊重.然后你可能会…
1.使用typeof bar ==="object"来确定bar是否是一个对象时有什么潜在的缺陷?这个陷阱如何避免? 尽管typeof bar ==="object"是检查bar是否是对象的可靠方法,但JavaScript中令人惊讶的问题是_null_也被认为是一个对象! 因此,下面的代码打印到控制台的是true而不是false: var bar = null; console.log(typeof bar === "object"); // l…
javaScript 那些方式中检测数据类型 typeof typeof isNaN // 结果是function 检测数组的几种方式 instanceof arr instanceof Array() es5中 toString.call() toString.call() 传统事件绑定和符合W3c标准绑定有什么区别 两者的区别 传统事件绑定 <div onclick="alert('ok')">传统事件绑定</div> <div id='dv'>…
一.ES6 1.模块化 ES6通过export和import实现模块化 ES6的模块化的基本规则或特点, 欢迎补充: 1:每一个模块只加载一次, 每一个JS只执行一次, 如果下次再去加载同目录下同文件,直接从内存中读取. 一个模块就是一个单例,或者说就是一个对象: 2:每一个模块内声明的变量都是局部变量, 不会污染全局作用域: 3:模块内部的变量或者函数可以通过export导出: 4:一个模块可以导入别的模块 例子: // util1.js export default{ a: // expor…
今天在偶然间查看到了一段代码,代码使用了很短的篇幅完成了字符串统计相同字符次数这个经典面试题,其中用到了reduce这个方法,网上查了查,没有查到什么有价值的东西,导致浪费了我一些时间才看懂,现将我的思路整理如下: 原代码: var arr="qweqrq" var info= arr.split('').reduce((a,b)=> (a[b]++ || (a[b]=1),a) ,{}) console.log(info) 代码思路是这样的,先将字符串arr通过split方法切…
有关函数调用变量问题 var a =10; function aaa(){ alert(a); } function bbb(){ var a = 20; aaa(); //10 } bbb(); 变量声明问题 function aaa(){ var a=b=10; } aaa(); alert(a);//not defined alert(b);//10 变量的查找是就近原则去查找.var 定义的变量,当就近没有找到的话.就会查找外层: var a = 10 function aaa(){ a…
原型 异步 一.什么是单线程,和异步有什么关系 单线程:只有一个线程,同一时间只能做一件事原因:避免DOM渲染的冲突解决方案:异步 为什么js只有一个线程:避免DOM渲染冲突 浏览器需要渲染DOM JS可以修改DOM结构 JS执行的时候,浏览器DOM渲染会暂停 两端JS也不能同时执行(都修改DOM就冲突了) webworker支持多线程,但是不能访问DOM   解决方案存在的问题 问题一:没按照书写方式执行,可读性差 问题二:callback中不容易模块化 二.什么是event-loop 事件轮…
        JavaScript不仅门槛低,而且是一门有趣.功能强大和非常重要的语言.各行各业的人发现自己最混乱的选择是JavaSscript编程语言.由 于有着各种各样的背景,所以不是每个人都对JavaScript及其基本原理有广泛的认识.通常来书,除非你去参加工作面试才会去思考为什么或者怎么做, 否则JavaScript只是你工作的内容.     这个系类的目标是深入探讨JavaScript的一些概念和理论.主题来自于 Darcy Clarke的JavaScript典型面试问题列表.希望…