首页
AI Coding
沸点
课程
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
IOneStar
掘友等级
web
|
【牧码的星星】
临渊羡鱼不如退而结网
获得徽章 7
动态
文章
专栏
沸点
收藏集
关注
作品
赞
448
文章 389
沸点 59
赞
448
返回
|
搜索文章
最新
热门
赋值、浅拷贝、深拷贝区别
引用类型数据保存在堆内存中,引用数据类型的变量是一个指向堆内存中实际对象的引用,存在栈中。 基本类型赋值,系统会为新的变量在栈内存中分配一个新值,这个很好理解。 引用类型赋值,系统会为新的变量在栈内存中分配一个值,这个值仅仅是指向同一个对象的引用,和原对象指向的都是堆内存中的同…
一文理解 this、call、apply、bind
当时对this的内部原理什么的都理解的不是很深刻,就只能凭借遇到很多坑之后,总结了出了那时候自己用来判断的标准。这里会再次略微深入的说一下。思路还是围绕上面总结的那两句话。 位置①,obj.foo(),是obj通过.运算符调用了 foo(),所以指向的值 obj。 位置②,是把…
函数柯里化:三行代码实现 add(1)(2)(3)
本文主要从 3W (what, how, why) 角度出发通俗易懂的解释一下 什么是函数柯里化,以及怎么用三行代码来实现 add(1)(2)(3) 这个很常见的面试题。 函数柯里化(curry)是函数式编程里面的概念。curry的概念很简单:只传递给函数一部分参数来调用它,让…
【JS基础】理解var、let、const
基本数据类型是按值访问的,因为可以操作保存在变量中的实际的值。 引用数据类型的值是保存在内存中的对象,JS不允许直接访问内存中的位置,所以在操作的时候操作的是对象的引用;因此是引用数据类型是按照引用访问的。 我们可以看到,obj1保存了一个对象的实例,这个值被复制到 Obj2中…
简单通俗的理解Vue3.0中的Proxy
什么是代理呢,可以理解为在对象之前设置一个“拦截”,当该对象被访问的时候,都必须经过这层拦截。意味着你可以在这层拦截中进行各种操作。比如你可以在这层拦截中对原对象进行处理,返回你想返回的数据结构。 ES6 原生提供 Proxy 构造函数,MDN上的解释为:Proxy 对象用于定…
装饰器(Decorator)
JavaScript装饰器(Decorator)的语法现在处于 Stage 2 阶段,具体的可以查看 proposal-decorators。 文章下面的内容是根据以前的提案同时参考了一些文章,已经有点过时了。 最近会好好看一下官方的一些规范,对内容做出修改。感谢 @justj…
详解ES6中的class
class是一个语法糖,其底层还是通过 构造函数 去创建的。所以它的绝大部分功能,ES5 都可以做到。新的class写法只是让对象原型的写法更加清晰、更像面向对象编程的语法而已。 constructor方法,这就是构造方法,this关键字代表实例对象。 类的数据类型就是函数,类…
async原理解析
async其实就是 Generator的语法糖,看本篇文章之前可以先看一下上一篇文章 Generator函数。理解 Generator就容易理解为什么说async是异步编程的完美解决方案了。 可以发现,async函数就是将Generator函数的星号(*)替换成async,将 …
本周总结请查收(内附21道前端面试题)
本周发起了一个100天前端进阶计划,每天一个知识点,搞明白背后的原理,这是第一周的总结,请注意查收。 CommonJs模块输出的是一个值的拷贝,也就是说,一旦输出一个值,模块内部的变化就影响不到这个值。 ES6 模块的运行机制与 CommonJS 不一样。JS 引擎对…
setTimeout和requestAnimationFrame
答案:输出 2 , 1。 JavaScript语言的一大特点就是单线程,也就是说,同一时间只能做一件事,前面的任务没做完,后面的任务只能等着。 这主要与JavaScript用途有关。它的主要用途是与用户互动,以及操作DOM。如果JavaScript是多线程的,会带来很多复杂的问…
下一页
个人成就
优秀创作者
文章被点赞
3,637
文章被阅读
336,622
掘力值
11,700
关注了
109
关注者
992
收藏集
12
关注标签
29
加入于
2017-03-13