![](https://img-blog.csdnimg.cn/20190918140037908.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
JS_开发知识点记录-好记性不如烂笔头
梳理总结日常开发经常用到但容易混淆的小知识点
青青子衿-悠悠我心VIP
这个作者很懒,什么都没留下…
展开
-
JS获取浏览器可视区域宽高
写在前面浏览器可视区域宽高并不就等于浏览器窗口宽高,而是除去顶部标签栏+滚动条(如果有)+控制台(如果有f12打开)之外的尺寸大小因为比较简单所以直接上代码:let w, h;// 对于ie9以上浏览器(手机浏览器,一直是保持最新内核标准,当然也支持这种方式获取)w = window.innerWidth;h = window.innerHeight// 对于ie9以下w = document.documentElement.clientWidth;h = do...原创 2022-04-27 15:10:15 · 5083 阅读 · 2 评论 -
JS中如何跳出.forEach循环
写在前面 提到在一段程序中如果碰到需要终止,结束一个循环,函数或者一段代码,一般会想到以下这几个关键字return、continue、break简述一下三者的区别:break: 终止整个循环(有内层循环时终止的是内层循环),退出switch语句;只能用于循环或者switch语句中,其他地方使用会报错 continue:与break相似,不同之处在于结束的是本次循环,相当于跳过本次循环执行下一次循环;只能用于while,do/while,for,for/in循环中,其他地方使用会报...原创 2022-04-27 14:43:30 · 24872 阅读 · 0 评论 -
JS数组深拷贝、对象深拷贝
写在前面为什么要做深拷贝?简而言之,这是由于js定义的基础数据类型和复杂数据类型的本质决定的。基础数据类型存储在堆中,拷贝赋值引用的是值,修改拷贝后的值并不会影响原值;而复杂数据类型值存储在堆中,引用地址存储在栈中,拷贝赋值的是引用地址,修改拷贝后的值会修改原先的值。有时候需要对copy的数据进行修改,但不想破坏原先的值,这就需要做深拷贝了。具体实现数组的深拷贝 方法一: 利用for循环+pushlet arr = [1, 2, 3, 4, 5...原创 2022-04-26 17:54:28 · 808 阅读 · 0 评论