首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
JavaScript
墨色
创建于2022-09-19
订阅专栏
JavaScript
暂无订阅
共10篇文章
创建于2022-09-19
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
手写寄生组合式继承
手写实现ES5的继承, 寄生组合式继承,通过绑定this借用父类构造函数,也可以使用Object.create()方法替代createObject()
手写函数柯里化
--- highlight: a11y-dark --- ```js function cxCurrying(fn) { function curryFn(...args) { if(args.len
script元素和页面解析的关系、defer和async属性
script元素和页面解析的关系 浏览器在解析HTML的过程中,遇到了script元素是不能继续构建DOM树的,它会停止继续构建,首先下载JavaScript代码,并且执行JavaScript的脚本,
布局元素绘制图层
绘制过程中,可以将布局后的元素绘制到多个合成图层中,这是浏览器的一种优化手段 默认情况下,标准流中的内容是绘制在同一个图层(layer)中,一些特殊的属性,会创建一个新的合成层,并且新的图层可以利用G
从URL输入到页面展现发生了什么?
1.DNS域名解析 DNS 协议提供通过域名查找 IP 地址,或逆向从 IP 地址反查域名的服务。浏览器通过向 DNS 服务器发送域名,DNS 服务器查询到与域名相对应的 IP 地址,然后返回给浏览器
函数中this指向分析
1.默认绑定 独立函数调用 2.隐式绑定 3.显式绑定 4.new绑定 5.额外函数补充call/apply/bind 6.this绑定的优先级 显示绑定的优先级高于隐式绑定,new绑定高于隐式绑定,
new操作符具体做了什么?
1.new操作符是什么? 在JavaScript中,new操作符用于创建一个给定构造函数的实例对象 由上可以看出,通过new关键字创建出来的实例对象可以访问到构造函数中的属性,也可以访问构造函数原型链
栈内存和堆内存
原始类型占据的空间是栈内存中分配的 对象类型占据的空间是堆内存中分配的 值传递 引用传递 函数调用栈,函数本质上也是对象,保存在堆内存中,但是函数的调用是在栈内存中执行
JavaScript的头等函数
1.函数可以被赋值给变量 2.函数在变量之间来回传递 3.函数可以另外一个函数的参数 4.函数作为另外一个函数的返回值 5.将函数存储在另一个函数中 总结:使用函数作为头等公民的编程方式称为函数式编程
函数的递归调用
函数自己调用自己,默认情况下会无限循环,所以递归调用必须有终止条件 例1、实现x的n次幂 例2、斐波那契数列 for循环实现 递归实现 总结:递归效率比较低,容易栈溢出