![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JavaScript
原生JS容易忽略的点
板栗栗
这个作者很懒,什么都没留下…
展开
-
var let const的区别和用法
面试的时候这三个定义变量和函数的方法没有解释清楚,今天把他们总结清楚。只要搞清楚全局作用域、函数作用域和块级作用域。 参考资料 全局作用域和函数作用域 块级作用域 全局作用域 这个比较好理解,就是定义在script里面的变量和函数,可以在任何地方访问到。 函数作用域 调用函数的时候会创造一个函数作用域,需要注意的是只有调用函数的时候才会创造,函数在定义的时候是不会创造作用域的。 块级作用域 块级作用域是ES6才定义的。最简单的理解是{ }中间的部分是一个块级作用域”。例如:for 循环、 if原创 2020-05-11 22:23:34 · 306 阅读 · 0 评论 -
前端面试必考——JS闭包
闭包是前端面试的时候,必然会问到的问题。码龄一年的我在实际应用的时候还没有应用到。但是先搞定面试先。等以后开发经验再多一点的时候,再加更多的理解吧。 闭包: 内部函数总是可以访问其外部函数的参数和变量 其实理解这句话要先理解js的变量作用域,函数内部可以直接读取全局变量,但是在函数外部是不可以读取函数内的局部变量。所以需要闭包来访问函数内部的变量。 function outerFunc() { var name = "内部函数变量"; function innerFunc() { .原创 2020-05-08 22:36:09 · 295 阅读 · 0 评论 -
Js深拷贝和浅拷贝及相关知识点
不管是实际应用还是面试当中,js的深拷贝和浅拷贝的区别一直都是最常遇到的问题,今天花点时间彻底搞定它。 相关知识点 1. js两种不同的数据类型 基本类型:String,Boolean,Number,Undefined,Null; 引用类型:Object(Array,Date,RegExp,Function); 两者最大的区别就是保存位置的不同,基本数据类型是保存在栈内存里;引用数据类型是保存...原创 2020-05-07 22:49:42 · 140 阅读 · 0 评论 -
JS容易混淆的call、apply和bind方法
详情描述 共同点 都是用来改变函数的this的指向 bind是返回对应函数;apply、call是立即调用 call() 定义:调用一个对象的一个方法,用另一个对象替换当前对象 理解: method1.call(method2,num1,num2) = method1(num1,num2) 即用method1替换method2 例子: function Animal(){ this....转载 2019-08-27 16:55:08 · 103 阅读 · 0 评论 -
JS中的防抖和节流
摘要 防抖和节流是前端优化的一部分,可以防止过多的请求。在刚开始做项目的时候还没有意识到,但是到了企业级开发或者大项目开发的时候,要考虑防抖和节流。 详细请参考js:防抖动与节流 防抖 怎么理解 防抖其实是使某一函数(请求)在用户结束操作后的规定时间后再执行。 应用场景 比如在表单输入时一般要进行非空校验,如果没有防抖的话,会在用户每输入一个字符就执行一次非空校验。 当有了防抖之后,可以使用户在停...原创 2019-08-30 19:53:37 · 200 阅读 · 0 评论