JavaScript基础
自然卷-ww
我 不 懒!!
展开
-
JS判断数组、对象
Object.prototype.toString.call()优点:可以检测所有基本数据类型,即使是 null和defined缺点:不能精准判断自定义对象,对于自定义对象只会返回[object Object]Object.prototype.toString.call() 常用于判断浏览器内置对象每一个继承自Object 的对象都有toString方法,如果该方法没有被重写的话,就会返回[Object type](其中type为对象的类型)非Object类型的对象使用toString时,会原创 2021-12-29 15:02:48 · 478 阅读 · 0 评论 -
总结:js延迟加载的方式有哪些?
该面试题主要考察的是程序的性能方面。性能优化的核心思想就是快,常见的优化手段有预先准备数据(如缓存),按需获取,分段、异步获取等1.JS的同步加载同步加载(又称阻塞模式):直接将参考博客:https://www.cnblogs.com/songForU/p/10905031.html...原创 2020-06-18 15:43:39 · 602 阅读 · 0 评论 -
前端复习1:从一道题分析JS事件循环机制
console.log('global')//第一个宏任务(整体script)进入主线程,打印afor (var i = 1;i <= 5;i ++) {//注意这里定义了全局变量i setTimeout(function() {//遇到setTimeout,其回调函数进入宏任务队列 console.log(i) },i*1000) console.log(i)//打印i}new Promise(function (resolve) {//遇到Promise,new Pr原创 2020-06-15 22:45:20 · 252 阅读 · 0 评论 -
js算法:两个栈实现一个队列
题目:用两个栈来实现一个队列,完成队列的Push和Pop操作本来是很简单的一道题,但是二刷的时候又出错了…反思我的错误代码:var inStack=[];var outStack=[];function push(node){ inStack.push(node);}function pop(){ if (outStack){ return outStack.pop(); }else{ while(inStack){原创 2020-06-08 10:29:29 · 346 阅读 · 0 评论 -
前端面试题-声明提前
参考文章面试题:四处分别输出什么?为什么?console.log(a)//?a();//?var a =3;function a(){ console.log(10);}console.log(a);//?a = 6;a();//?正确代码顺序可以改为:function a(){ console.log(10);}var a;//再次声明a,并未修改a的值,忽...原创 2019-08-23 11:33:35 · 216 阅读 · 0 评论 -
JavaScript--块级作用域
参考文章1参考文章2什么是块级作用域?任何一对花括号({和})中的语句集都属于一个块,在这之中定义的所有变量在代码块外都是不可见的,我们称之为块级作用域,例如for、while、if而JavaScript不具有块级作用域(在es6标准出来之前,javascript是不存在块级作用域的),即在javascript的代码块中定义一个变量,在该代码块外面仍可使用该变量,例如:<scrip...原创 2019-08-25 22:02:36 · 664 阅读 · 0 评论 -
JavaScript闭包
首先是一些基本概念:匿名函数 和 自执行函数 / 自调用函数匿名函数的基本形式:function () { //代码 }既然没有名字,那么如何调用呢:(1)将匿名函数付给一个变量,这个变量现在就充当了这个函数的名称,但是记住,这个不是名称,在用该变量时就等同于使用该函数。var b=function () { //代码 }b();(2)使用自...原创 2019-09-08 22:28:36 · 103 阅读 · 0 评论