![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JavaScript
JavaScript进阶
前端-小鑫
这个作者很懒,什么都没留下…
展开
-
JavaScript call-apply-bind三者区别与介绍
call apply: 相同点:第一个参数是改变this指向,在非严格模式下传递null / undefined/不传参都是指向window 不同点::apply 需要的参数数组形式传递,call 一个一个传递 apply性能比call好 语法 fun.call([context],1,2) fun.call([context],[1,2]) call和apply 与bind比较 区别:call和apply 都是改变this的同时把函数执行了,而bind不是立即执行函数,只是预先改变this原创 2021-08-01 17:03:41 · 155 阅读 · 0 评论 -
JavaScript深浅拷贝
理解:浅拷贝,只克隆第一层,修改拷贝后的第二层将影响被拷贝的数据 浅拷贝 三种方式 let obj={ a:10, b:[10,20], c:{ x:10 }, d:/^d+$/ } let obj1={...obj} //第一种 let obj2=Object.assign({},obj) //第二种 //封装 第三种 let obj3={} for(let key in obj){ if(!obj.hasOwn...原创 2021-08-01 17:01:58 · 170 阅读 · 0 评论 -
JavaScript检测属性
typeof 对于原始类型(boolean,null,undefined,number,string,symbol), 缺点:除了 null 以及不能区分object 都可以显示正确的类型 原因null 二进制000 而对象在计算中都是以000计算机存储(浏览器bug) //原始类型存储的都是值,是没有函数可以调用的,比如 undefined.toString() 会报错 typeof 1 // 'number' typeof '1' // 'string' typeof undefined //原创 2021-08-01 16:58:46 · 138 阅读 · 0 评论 -
JavaScript运行机制
组成: 1.核心(ECMAScript)是一种在国际认可的标准的脚本语言规范(语法、关键字和保留字、控制语句、对象、变量和数据类型) 2.文档对象模型(DOM)HTML或XML页面中的每个组成都是某种类型的节点(document,createElement) 3.浏览器对象模型(BOM)可以对浏览器窗口进行访问和操作(window.innerHeight,navigator.appName) JS单线程概念: JS在同一个时间只能做一件事,同步,从上往下执行 任务队列 : 1.同步任务: co原创 2021-08-01 16:57:58 · 130 阅读 · 0 评论 -
JavaScript 变量
Var Let Const 变量区别 var 全局变量 ,有预解析,存在变量提升 属于window,函数中定义的var仅可在局部使用 const 局部变量,定义好后不能改变 let 局部变量,没有预解析,不存在变量提升 代码全局/局部体现: //var 可以alert //const 与 let 报错未定义 if (true) { //var a=12; // const a=12 let a = 12; } ale...原创 2021-08-01 16:56:30 · 115 阅读 · 0 评论