学习阅读正则

2019-11-21
阅读 3 分钟
1.2k
先看下下面几张图的共同点: /(?=.*d)(?=.*[A-Z])(?=.*W)(?=.*[a-z])(?=.*S)^[0-9A-Za-zS]{6,12}$/g 个人理解:正则的基础匹配如同坐标轴一样,有横向匹配,纵向匹配,位置匹配; 量词 (横向) 字符 匹配 {n,m} 匹配至少n次,但不能超过m次 {n,} 匹配n次或者更多次 {n} 匹配n次 ? 匹配0或者1次,等价于{0,1} + 匹配1次或...

Event(事件)是什么?注册事件监听的方式有哪些?

2019-09-19
阅读 1 分钟
2.8k
Event 接口表示在 DOM 中发生的任何事件(常见事件); 一些是用户生成的(例如鼠标或键盘事件),而其他由 API 生成(例如指示动画已经完成运行的事件,视频已被暂停等等)。事件通常由外部源触发,同样也会以编程方式触发,例如执行一个 element 的一个 HTMLElement.click( ) 方法,或通过定义事件,然后使用 EventTarget...

JS 正则同时验证 大写字母,小写字母,数字,特殊字符

2019-09-03
阅读 1 分钟
5.6k
就是下面这个啦: {代码...}

移动端适配

2019-05-10
阅读 4 分钟
16.5k
在说具体内容之前,我们必须了解几个概念,就是:Retina屏、物理像素、设备独立像素、设备像素比在CSS中我们一般使用px作为单位,需要注意的是,CSS样式里面的px和物理像素并不是相等的。CSS中的像素只是一个抽象的单位,在不同的设备或不同的环境中,CSS中的1px所代表的物理像素是不同的。在PC端,CSS的1px一般对应着电...

逻辑运算符的使用

2019-05-06
阅读 1 分钟
968
null 注:localStorage.getItem() 与 sessionStorage.getItem() 获取一个不存在的值返回的也为null

vue 源码学习参考文章

2019-05-06
阅读 1 分钟
1.2k
[链接] [链接] [链接] 实现一个简易的观察对象 [链接]

数组常用方法总结

2019-05-05
阅读 2 分钟
869
concat() 方法用于合并两个或多个数组。此方法不会更改现有数组,而是返回一个新数组。 concat方法创建一个新的数组,它由被调用的对象中的元素组成,每个参数的顺序依次是该参数的元素(如果参数是数组)或参数本身(如果参数不是数组)。它不会递归到嵌套数组参数中。

js 中for循环那些事

2019-05-05
阅读 3 分钟
1.9k
initialization一个表达式 (包含赋值语句) 或者变量声明。典型地被用于初始化一个计数器。该表达式可以使用var或let关键字声明新的变量,使用var声明的变量不是该循环的局部变量,而是与for循环处在同样的作用域中。用let声明的变量是语句的局部变量。该表达式的结果无意义。注意此处的let 和 var 声明表达式的不同点

彻底理解 i++ 与 ++i 的区别

2019-04-30
阅读 2 分钟
3.6k
{代码...} 以上的输出的结果是 0;先看来看看他们的语法定义: 前置递增递减 ++i / --i 执行前置递增和递减操作时,变量的值都是在语句被求值以前递减递增的。(在计算机科学领域,这种情况通常被称作副效应。)请看下面这个例子。 {代码...} 前置递增递减遇到有赋值操作时: 先递减(29-1),再计算表达式的值(28加上2...

一起来用js实现一个Set 类

2019-04-30
阅读 4 分钟
3.3k
集合中的对象列表用“{}”(大括号)包围。还有一个概念叫空集。空集就是不包含任何元素的集合。比如24和29之间的素数集合。由于24和29之间没有素数(除了1和自身,没有其他正因数的大于1的自然数),这个集合就是空集。空集用“{ }”表示。你也可以把集合想象成一个既没有重复元素,也没有顺序概念的数组。在数学中,集合也...

js 中的数据类型

2019-04-25
阅读 3 分钟
1.1k
番外:作用域是一套规则,用于确定在何处以及如何查找变量(标识符)。如果查找的目的是对变量进行赋值,那么就会使用LHS查询;如果目的是获取变量的值,就会使用RHS查询。RHS查询找到了一个变量,但是你尝试对这个变量的值进行不合理的操作,比如试图对一个非函数类型的值进行函数调用,或着引用null或undefined类型的...

ES6 中的Class

2019-04-25
阅读 2 分钟
1.4k
基本用法 ES5 的写法 {代码...} ES6 的写法 {代码...} 在类的实例上面调用方法,其实就是调用原型上的方法。 {代码...} 注:类的内部所有定义的方法,都是不可枚举的 constructor 方法 constructor方法是类的默认方法,通过new命令生成对象实例时,自动调用该方法。一个类必须有constructor方法,如果没有显式定义,一个...

js 中的栈

2019-04-08
阅读 1 分钟
879
栈 类似一摞书或者一摞盘子 遵循 后进先出一些主要的方法: 栈可以解决例如十进制转其他进制的问题 {代码...}

js 中的Generator 函数

2019-04-07
阅读 5 分钟
3.1k
首先可以把它理解成,Generator 函数是一个状态机,封装了多个内部状态。执行 Generator 函数会返回一个遍历器对象,也就是说,Generator 函数除了状态机,还是一个遍历器对象生成函数。返回的遍历器对象,可以依次遍历 Generator 函数内部的每一个状态。

js 中的闭包

2018-02-05
阅读 2 分钟
1.2k
#### 先理解 js 中的执行环境([链接]闭包 按中文的意思就是关上一个包的意思。如果我们把函数的变量对象当做是一个包的话,那这个词很形象体现了它的作用 。函数被调用时会创建它的执行环境,函数语句执行完后程序会自动销毁这个函数的执行环境,但是当一个函数中声明了另一个函数(子函数),并且如果存在对这个子函数...

js 执行环境 活动对象 变量对象 作用域链的理解

2018-01-26
阅读 3 分钟
2.1k
当代码在一个环境中执行时,会创建变量对象的一个作用域链(scope chain),这个作用域链包含了全局环境的变量对象(执行环境中定义的所有变量和函数都保存在这个对象中)并被保存在pub()函数内部的scope属性中。但是,当我们打开浏览器的时候已经存在了一个全局的执行环境,这个全局的执行环境属于浏览器,JS里浏览器被...

js 中的基本类型,引用类型,基本包装类型

2018-01-26
阅读 2 分钟
2.3k
毫无疑问上面的string是一个基本类型,但是它却能召唤出一个 charAt() 的方法,这是什么原因呢?主要是因为在基本类型中,有三个比较特殊的存在就是:String Number Boolean,这三个基本类型都有自己对应的包装对象。并且随时等候召唤。包装对象呢,其实就是对象,有相应的属性和方法。至于这个过程是怎么发生呢,其实是...

js 创建对象的几种方式

2018-01-26
阅读 2 分钟
2.2k
函数createPerson()能够根据接受的参数来构建一个包含所有必要信息的Person对象。可以无数次地调用这个函数,而每次它都会返回一个包含三个属性一个方法的对象

js 原型链

2018-01-24
阅读 2 分钟
1.5k
bar并没有num 属性,它是怎么拿到3的呢 此处的 bar 就是通过原型链找到了值原型链:JavaScript中的对象有一个特殊的 __proto__ 内置属性,其实就是对于其他对象的引用(关联)。当我们使用 function关键字声明一个函数时,系统会自动创建一个对象,访问这个对象可以通过 函数名.prototype 访问(我们一般把这个对象叫做原...

js继承

2018-01-24
阅读 4 分钟
1.2k
为了解决包含引用类型值的原型属性会被所有实例共享的问题,大神们发明了在子类型构造函数的内部调用超类型构造函数然后通过apply()和call()方法在(将来)新创建的对象上执行构造函数的方式来实现继承,如下