240
每个人都有属于自己的一片森林,也许我们从来不曾去过,但它一直在那里,总会在那里。迷失的人迷失了,相逢的人会再相逢!
摘要: 概念 当用户手动导航或者 CSSOM scrolling API 触发滚动操作时,CSS 属性 scroll-behavior 为一个滚动框指定滚动行为,其他任何的滚动,例如那些由于用户行为而产生的滚动,不受这个属性的影响。在根元素中指定这个属性时,它反而适用于视窗。 语法 兼容性 例子 阅读全文
posted @ 2019-03-22 17:41 _gxing 阅读(3288) 评论(0) 推荐(0)
摘要: 一、概念 跨域是指 从一个域名的网页去访问另一个域名的资源,只要协议、域名、端口有任何一个不同,就被当作是跨域。 这是有浏览器的 同源策略 造成的。所谓同源是指, 域名、协议、端口均相同。 同源策略限制一下几种行为: 1、Cookie、LocalStorage 和 IndexDB(浏览器本地数据库) 阅读全文
posted @ 2019-03-22 17:13 _gxing 阅读(317) 评论(0) 推荐(0)
摘要: 一、作用域 在 Javascript 中,作用域分为 全局作用域 和 函数作用域 全局作用域: 代码在程序的任何地方都能被访问,window 对象的内置属性都拥有全局作用域。 函数作用域: 在固定的代码片段才能被访问 例子: 作用域有上下级关系,上下级关系的确定就看函数是在哪个作用域下创建的。如上, 阅读全文
posted @ 2019-03-22 16:23 _gxing 阅读(31035) 评论(3) 推荐(0)
摘要: this 的取值,是在函数真正被调用执行的时候确定的,而不是在函数被定义是确定的,因为 this 的取值是执行上下文的一部分,每次调用函数,都会产生一个新的执行上下文环境。 this 的取值,分四种情况: 1、构造函数 2、函数作为对象的一个属性 3、函数用 call 或 apply 调用 4、全局 阅读全文
posted @ 2019-03-22 14:07 _gxing 阅读(339) 评论(0) 推荐(0)
摘要: 概念 简单来讲,就是函数包含函数,内部函数可以访问外部函数(包含函数)的变量和参数,而外部函数(包含函数)却无法访问内部函数的任何变量。创建闭包的常见方式,就是在一个函数内部创建另一个函数。 这里面涉及到执行上下文和作用域链的知识。当一个函数被调用时,会产生一个执行环境和相应的作用域链。内部函数不仅 阅读全文
posted @ 2019-03-21 23:16 _gxing 阅读(243) 评论(0) 推荐(0)
摘要: 变量提升 在 ES6 出来之前,没有块级作用域,只有全局作用域 和 函数作用域。 变量提升指的是 将变量声明提升到它所在作用域的最开始部分。 例子: 相当于: 函数提升 函数创建有两种方式,一种是函数声明形式,一种是函数字面量形式,而只有 函数声明形式 才有函数提升。 例子: 相当于: 优先级 函数 阅读全文
posted @ 2019-03-21 17:09 _gxing 阅读(225) 评论(0) 推荐(0)
摘要: 先看个小例子 为什么打印出来的是 undefined 呢? 执行上下文概念 当代码运行时,会产生一个对应的执行环境,在这个环境中,所有变量会被事先提出来(变量提升),有的直接赋值,有的为默认值 undefined,代码从上往下开始执行,就叫做执行上下文。 在 JavaScript 的世界里,运行环境 阅读全文
posted @ 2019-03-21 15:47 _gxing 阅读(8588) 评论(0) 推荐(0)
摘要: 一、理解堆栈,基本数据类型与引用数据类型 1、堆栈 栈(stack):系统自动分配的内存空间,内存会由系统自动释放,用来存放函数的参数值,局部变量的值等,特点是先进后出。 堆(heap):系统动态分配的内存,内存大小不一,内存不会自动释放。一般由程序员分配释放,主要负责像Obejct这种变量类型的存 阅读全文
posted @ 2019-03-20 15:53 _gxing 阅读(5997) 评论(0) 推荐(0)
摘要: 博客样式由 BuildtoWin主题 改写生成。 页首html代码 页脚html代码 侧边栏公共html代码 页面定制css样式代码 html { scroll-behavior: smooth; // 实现锚点平滑滚动 } body { background: #eee; padding-top: 阅读全文
posted @ 2019-03-19 23:31 _gxing 阅读(886) 评论(0) 推荐(0)
摘要: 一、如何理解JS的单线程 JS 在同一时间段只能做一件事 JS 同步是单线程,异步可以实现多进程 二、理解任务队列 js 是一门单线程语言,这就意味着所有任务都需要排队,前一个任务结束,后一个任务才会开始。所以就有了 同步任务 和 异步任务。 同步任务指的是,在主线程上排队执行的任务,前一个任务结束 阅读全文
posted @ 2019-03-19 17:40 _gxing 阅读(2358) 评论(0) 推荐(0)