随笔分类 -  JavaScript

关于JavaScript的知识
摘要:在很多编程语言中如java、PHP、python、JavaScript 等都可以使用正则表达式,但是不管在什么语言中,正则表达式的规则都是一样的。 正则表达式是独立的体系,与编程语言无关,唯一的关联就是不同语言中使用正则表达式规则的API不同。 正则表达式主要对字符串进行操作:查找和替换。 在下列场 阅读全文
posted @ 2022-04-06 15:33 司徒炼 阅读(492) 评论(0) 推荐(0) 编辑
摘要:加载和执行 + 所有的 放在``之前 + 合并脚本,尽量减少 ,因为每个 就是一次http请求 + 内嵌的 不能放在加载CSS的 之后 + 无阻塞脚本,使用 的`defer`属性 + 动态创建 元素来下载并执行代码,动态创建的建议放在head里 数据存取 + 能用局部变量就用局部变量,因为查找作用域 阅读全文
posted @ 2020-05-04 21:46 司徒炼 阅读(234) 评论(0) 推荐(0) 编辑
摘要:另一个解决回调函数的方案 阅读全文
posted @ 2020-04-17 17:54 司徒炼 阅读(146) 评论(0) 推荐(0) 编辑
摘要:在解决上面的问题之前,我们要了解下基本的知识 JS的数据类型有五种基本类型,undefined,null,boolean,number,string。 还有一种复杂的数据类型,object 从储存方式看,又分为值类型,引用类型,object便是引用类型。 typeof 该操作符只能判断值类型的数据类 阅读全文
posted @ 2020-04-17 17:51 司徒炼 阅读(1884) 评论(0) 推荐(0) 编辑
摘要:promise是处理异步操作,避免回调地狱的一个方案 创建Promise 首先解释一下这段代码,Promise()传入的是一个函数,可以是箭头函数,也可以是普通函数,然后这个函数的两个参数,依然是函数, 在成功时返回, 在失败时返回。 这样一个最简单的promise就创建好了。 链式调用 如果说,有 阅读全文
posted @ 2020-04-12 12:36 司徒炼 阅读(439) 评论(0) 推荐(0) 编辑
摘要:this 首先,说下 的两个常见 误区 指向自身? 因为 的从英文的角度上,很容易给人自身感觉,导致出 指向函数自身的想法。 很明显, 并不是指向函数自身的, 和`foo.b`并不是同一个 this指向与函数的作用域有关? 试图用作用域链的方法查找a,然而 并不买账。 那么接下来开始真正介绍 thi 阅读全文
posted @ 2019-12-30 15:24 司徒炼 阅读(168) 评论(0) 推荐(0) 编辑
摘要:闭包 主要了解如下 + 闭包的原理 + 闭包的创建 + 闭包的优缺点及其用处 + 释放闭包 + 循环中的闭包 闭包通俗来讲就是在一个函数外部能调用这个函数内部的函数,这种情况就是使用了闭包,不过更多时候是自己已经使用了闭包,但并不知道那就是闭包。 就如同上面这段代码,我们想要在 外部调用 ,甚至想在 阅读全文
posted @ 2019-12-29 16:27 司徒炼 阅读(167) 评论(0) 推荐(0) 编辑
摘要:立即执行函数表达式 立即执行函数表达式,大部分人也称为自执行函数。 自执行函数的写法 匿名函数 具名函数 自执行函数的传参 返回值 自执行函数也可以传递函数作为参数 为什么要使用立即执行函数表达式 有些时候我们要实现需求,为了实现这些业务逻辑,为了不让变量污染全局环境,定义了函数,但是这些函数,却不 阅读全文
posted @ 2019-12-29 12:22 司徒炼 阅读(803) 评论(0) 推荐(0) 编辑
摘要:全局变量 与某些编程语言不同, 并没有一种可以声明全局变量的关键字,有的只是全局变量的功能。 + 在最外层的作用域,也就是 用`var`声明的变量就是全局变量。 + 在函数内部,不用关键字声明变量,直接赋值,这时也是个全局变量 因为在最外层的变量,会被作为 的属性,前提是用 声明,这时候就算函数内部 阅读全文
posted @ 2019-12-28 16:36 司徒炼 阅读(5549) 评论(0) 推荐(0) 编辑
摘要:JavaScript的作用域 作用域总共有两种模式, 和`动态作用域` 词法作用域是由开发者在写代码时,将变量和块作用域写在哪里而决定的。 动态作用域是运行时确定的。 只有词法作用域,也就是我们说的作用域链,一层一层的嵌套,但 机制很像动态作用域,它也是在运行时决定的。 这段代码,以词法作用域来看会 阅读全文
posted @ 2019-12-28 15:31 司徒炼 阅读(185) 评论(0) 推荐(0) 编辑
摘要:JavaScript的RHS引用和LHS引用 + RHS是我要找到名为某某的变量,我要知道它的值是什么。 + LHS是我要找到名为某某的变量,将值赋值给它,我不需要知道这个变量之前的值是什么 我们看着段代码 给变量查找变量b并给其赋值,就是LHS引用;获取b的值就是RHS引用 这段代码看起来很简单, 阅读全文
posted @ 2019-12-28 14:16 司徒炼 阅读(346) 评论(0) 推荐(0) 编辑
摘要:var、let和const的区别 和`const`是ES6新增的关键字,如果还不知道ES6的小伙伴们,建议好好去了解下。 区别1 和`var const`用来声明常量。 变量就是赋值后可以改变它的值,常量就是赋值后就不能改变它的值。 区别2 不允许只声明不赋值,一旦声明就必须赋值 错误的写法 正确的 阅读全文
posted @ 2019-12-27 13:39 司徒炼 阅读(3790) 评论(0) 推荐(1) 编辑
摘要:变量提升 JavaScript的变量提升有两种,用 声明的变量以及用 声明的变量。 用var声明的变量 我们先来看下面这段代码,a的值是多少 代码1 按照以往编程语言的思路来看,代码自上而下运行,按这种思路,会报错,因为执行到第2行时,变量a还没有定义,所以会报错 然而事实上答案是 好,抱着疑惑,我 阅读全文
posted @ 2019-12-26 21:43 司徒炼 阅读(548) 评论(0) 推荐(1) 编辑

点击右上角即可分享
微信分享提示