- 博客(9)
- 收藏
- 关注
原创 封装一些常用的方法——持续更新
/* 深克隆 */function _cloneDeep(obj) { if (obj === null) return null; if (typeof obj !== "object") return obj; if (obj instanceof RegExp) return new RegExp(obj); if (obj instanceof Date)...
2020-04-24 22:03:47
147
原创 常见问题的总结
1、let和var的区别let不存在变量提升let不允许重复声明let在全局下声明的变量只是全局变量,和全局对象GO没有任何关系;而var在全局下声明的的全局变量,也相当于给全局对象GO设置了对应的属性,而且存在映射关系let解决了typeof检测没有声明过的变量的时候,结果是undefined而不是报错的暂时性死区问题let会产生一个块级私有作用域2、什么是闭包,闭包的作用以及优...
2020-03-23 21:26:01
150
原创 关于代码执行作用域
关于代码执行作用域在刷了一天关于变量提升和作用域的题目以后,我打算整理一下现在脑子里的东西(2020年3月19日18:43:35),开始吧。比如一串代码先执行,首先全局上下文要进一个执行环境栈,如果有var和function,则进行声明+定义,同时会给当前函数设置一个作用域([scope])当前函数创建时候所在的上下文。var的只是提前声明,function会声明+定义。什么是声明呢?简单...
2020-03-19 20:54:13
225
原创 JS中的变量提升机制
浏览器加载页面,想让代码执行,首先会形成一个栈内存(ECStack);然后开始让代码准备执行;=> 最开始执行的一定是全局下的代码,此时形成一个全局的执行环境(全局执行上下文EC(G)),把EC(G)压缩到栈内存中去执行(进栈);每一个函数执行也是这样操作的···=> 有些上下文在代码执行完成后,会从栈内存中移去(出栈),但是有些情况是不能移出去的(例如:全局上下文就不能移除··...
2020-03-18 23:16:28
271
原创 JS中不同数据类型之间的转化
不多BB,直接又开整JS中不同数据类型的转换把其他类型转换为数字类型Number([value]) 而isNaN在检测的时候,使用的就是这种方式转换为数字类型的Number是JS内置的转换方法,可以把其它数据类型“强制”转换为数字类型把字符串转换为数字:一但字符串中出现非有效数字字符,则结果为NaN,只有都是有效数字字符,才能转换为具体的数字,空字符串会转换为0把布尔...
2020-03-05 18:02:18
190
原创 JS中的数据类型以及如何检测
JS中的数据类型基本数据类型number正数、负数、零、小数NaN not a number,不是一个有效数字,但是属于number类型Infinity:无穷大的值,也是number类型的string在JS中用 单引号/双引号/反引号 包起来的都是字符串booleantruefalsenullundefinedsymbol...
2020-03-05 14:06:58
108
原创 queryURLParam获取URL地址中问号传参的信息和哈希值
/** *queryURLParam :获取URL地址中问号传参的信息和哈希值 *@params * url [string] 要解析的URL字符串 *@return * [object] 包含参数和哈希值信息的对象 *by JJbang on 20191128 */function queryURLParams(url) { //获取?和#后面的信息...
2019-11-28 22:51:53
752
1
原创 前端~JS基础学习笔记(更新ing)
常用的浏览器webkit内核(V8引擎)谷歌chromeSafariOpera >=V14国产浏览器手机浏览器···Gecko火狐FirefoxPrestoOpera <V14Trident+IE+IE EDGE开始采用双内核(其中包含chrome迷你)谷歌浏览器的控制台(F12/Fn+F12)ELements:查看结构样式,可...
2019-11-14 23:15:53
702
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人