原生js的一些盲点
2024-09-03 20:40:21
1、document.readyState 有三个值loading interactive
//loading 仍在加载 interactive 文档已被解析 正在加载状态结束 但是样式表和框架之类的子资源仍在加载 complete 文档和所有子资源已完成加载。表示
load
状态的事件即将被触发2、DOMContentLoaded 文档被完全加载和解析完成之后
addEventListener('DOMContentLoaded ',dosomething,boolean) 第三个参数默认false(冒泡阶段执行)true(捕获阶段执行)
3、for...in 遍历循环对象属性时会把原型上的所有属性都遍历一遍,解决方法用hasOwnProperty过滤不想看到的
Object.prototype.bar=1;
var foo={moo:2}
for(var i in foo){
console.log(i)
}
for(var i in foo) {
if (foo.hasOwnProperty(i)) {
console.log(i);
}
}
4、双等的写法不好,双等书写方式会自动转类型容易出现不可控的错误,尽量改变坏习惯 ,使用严格的===
5、代码一定要加分号,当程序员不写分号,浏览器会自动补齐分号,可能出现位置错误
6、if有大括号执行{}里面的函数,无{}执行最近的一行代码
7、concat
用于连接两个或多个数组,不会改变现有数组,仅仅返回被链接数组的一个副本
arrayObject.concat(arrayX,arrayX,......,arrayX)
实例1:
<script type="text/javascript"> var a = [1,2,3];
document.write(a.concat(4,5)); </script>
实例2:
<script type="text/javascript"> var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas" var arr2 = new Array(3)
arr2[0] = "James"
arr2[1] = "Adrew"
arr2[2] = "Martin" document.write(arr.concat(arr2)) </script>
实例3:
<script type="text/javascript"> var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas" var arr2 = new Array(3)
arr2[0] = "James"
arr2[1] = "Adrew"
arr2[2] = "Martin" var arr3 = new Array(2)
arr3[0] = "William"
arr3[1] = "Franklin" document.write(arr.concat(arr2,arr3)) </script>
8、argument
https://blog.csdn.net/zhouchangshun_666/article/details/90631889
9、eval 计算或去除引号,如果去除引号发现可以计算eval将返回计算结果,否则打印出去除引号的结果
最新文章
- ABP源码分析十八:UI Inputs
- JSON资料整理
- Logging configuration
- 高性能网站架构设计之缓存篇(5)- Redis 集群(上)
- iOS应用第三方推送的添加
- CF 346B. Lucky Common Subsequence(DP+KMP)
- [2012-4-10]ThinkPHP框架被爆任意代码执行漏洞(preg_replace)
- TeeChart注册方法
- Server2003系统上的内置服务器设置某类IP无法访问问题
- 黄聪:让WordPress主题支持语言本地化(使用poedit软件实现中文翻译功能)
- MIME类型
- 如何将std::string转int,double? (C/C++) (C) (template)
- ASP.NET - 多文件上传,纯代码,不使用插件
- Eclipse打JAR包的使用
- string 学习
- java中的线程池原理
- Redis创建集群报错
- C++ 自定义控件的移植(将在其它程序中设计的自定义控件,移植到现在的系统中)
- 前端学习 -- Xhtml语法规范
- error: Allowed memory size
热门文章
- Linq to SQL 语法整理(子查询 &; in操作 &; join )
- 用STM32定时器测量信号频率——测频法和测周法[原创cnblogs.com/helesheng]
- 团队展示——Part I
- Python定时任务利器—Apscheduler
- 第一篇:docker 简单入门(一)
- css 16-浏览器的兼容性问题
- [从源码学设计]蚂蚁金服SOFARegistry 之 如何与Meta Server交互
- (已解决)&#39;ng&#39; 不是内部或外部命令,也不是可运行的程序或批处理文件
- win10新版wsl2使用指南
- python菜鸟教程基础入门