![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
js
你可以猜猜
这个作者很懒,什么都没留下…
展开
-
常见js中的正则表达式
一、校验数字的表达式1. 数字:^[0-9]*$2. n位的数字:^\d{n}$3. 至少n位的数字:^\d{n,}$4. m-n位的数字:^\d{m,n}$5. 零和非零开头的数字:^(0|[1-9][0-9]*)$6. 非零开头的最多带两位小数的数字:^([1-9][0-9]*)+(.[0-9]{1,2})?$7. 带1-2位小数的正数或负数:^(\-)?\d+(\.\d{1,2})?$8. 正数、负数、和小数:^(\-|\+)?\d+(\.\d+)?$9. 有两位小数原创 2020-07-16 22:12:15 · 168 阅读 · 0 评论 -
js简单的轮播图的写法
代码<!DOCTYPE html><html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style> * {原创 2020-07-09 23:02:35 · 262 阅读 · 0 评论 -
js的垃圾回收机制以及内存泄漏的情况及解决方法
JS的垃圾回收机制。Js具有自动垃圾回收机制。垃圾收集器会按照固定的时间间隔周期性的执行。JS中最常见的垃圾回收方式是标记清除。工作原理:是当变量进入环境时,将这个变量标记为“进入环境”。当变量离开环境时,则将其标记为“离开环境”。标记“离开环境”的就回收内存。工作流程:垃圾回收器,在运行的时候会给存储在内存中的所有变量都加上标记。去掉环境中的变量以及被环境中的变量引用的变量的标记。再被加上标记的会被视为准备删除的变量。垃圾回收器完成内存清除工作,销毁那些带标记的值并回收他们原创 2020-07-07 20:34:15 · 292 阅读 · 0 评论 -
js的作用域(scope)深入了解
一、什么是作用域(Scope)[[scope]]:每个javascript函数都是一个对象,对象中有些属性我们可以访问,但有些不可以,这些属性仅供javascript引擎存取,[[scope]]就是其中一个。[[scope]]指的就是我们所说的作用域,其中存储了运行期上下文的集合。即作用域决定了代码区块中变量和其他资源的可见性。二、变量的作用域类型1.全局作用域:全局作用域贯穿整个javascript文档,在所有函数声明或者大括号之外定义的变量,都在全局作用域里。一旦你声明了一个全局变量,那么你在任何原创 2020-07-06 23:28:16 · 1069 阅读 · 0 评论 -
js中关于arguments的深入理解
了解arguments这个对象之前先来认识一下javascript的一些功能:其实Javascript并没有重载函数的功能,但是Arguments对象能够模拟重载。Javascrip中每个函数都会有一个Arguments对象实例arguments,它引用着函数的实参,可以用数组下标的方式"[]"引用arguments的元素。arguments.length为函数实参个数,arguments.callee引用函数自身。arguments他的特性和使用方法特性:1.arguments对象和Functio原创 2020-07-03 19:32:48 · 165 阅读 · 0 评论 -
一步了解js中GO和AO的产生过程
对于js来说,首先会有一个预编译期的过程,那么在预编译过程中会发生什么?预编译:函数预编译AO,全局预编译GOAO预编译是发生在函数执行的前一刻。(函数)预编译分四个步骤:function test(a,b){console.log(a);var c = 123;console.log©;function a(){};//这个是函数声明console.log(b);var b = function c(){};//这个是函数表达式console.log(b);}test(1,3)原创 2020-07-02 21:20:33 · 702 阅读 · 0 评论 -
Js关于作用域、作用域链和闭包的理解
作用域先来谈谈变量的作用域变量的作用域无非就是两种:全局变量和局部变量。全局作用域:最外层函数定义的变量拥有全局作用域,即对任何内部函数来说,都是可以访问的:局部作用域:和全局作用域相反,局部作用域一般只在固定的代码片段内可访问到,而对于函数外部是无法访问的,最常见的例如函数内部作用域总结1: 一个作用域下可以有多个子作用域2:相邻的子域之间不可以相互访问;父域不可以访问子域的内容3:子域可以访问父域的变量作用域链(Scope Chain)那什么是作用域链?我的理解就是,根据在原创 2020-07-02 21:12:46 · 315 阅读 · 0 评论 -
数组排序常见的7种方法
数组排序1、桶排序(桶中出现的数组元素都做个标记1,然后将桶数组中有1标记的元素依次打印)//简单, 但是不用,浪费内存var arr2=[];for(var i=0;i<arr.length;i++){var key=arr[i];arr2[key]=1;}for(var j in arr2){console.log(j);}2、冒泡排序(每一趟找出最大的)for(var i =0,len= arr.length;i<len;i++){// arr[i] // 前面的原创 2020-06-29 20:43:56 · 2994 阅读 · 0 评论 -
数组去重的8种常见方法
数组去重的方法一、利用ES6 Set去重(ES6中最常用)不考虑兼容性,这种去重的方法代码最少。这种方法还无法去掉“{}”空对象,后面的高阶方法会添加去掉重复“{}”的方法。二、利用for嵌套for,然后splice去重(ES5中最常用)双层循环,外层循环元素,内层循环时比较值。值相同时,则删去这个值。三、利用indexOf去重新建一个空的结果数组,for 循环原数组,判断结果数组是否存在当前元素,如果有相同的值则跳过,不相同则push进数组。四、利用sort()利用sort()排序原创 2020-06-29 20:07:48 · 4819 阅读 · 0 评论 -
如何使用最基本的for循环
前言今天学习到了for循环语句,我觉得自己有必要整理一下,虽然很内容很少,但是也不能不重视它,基础要一步一步打牢。一、for循环的语句格式1、循环语句的组成(1)初始化语句:一条或者多条语句,这些语句完成一些初始化操作(2)判断条件语句:这是一个boolean 表达式,这个表达式能决定是否执行循环体(3)循环体语句:这个部分是循环体语句,也就是我们要多次做的事情(4)控制条件语句:这个部分在一次循环体结束后,下一次循环判断条件执行前执行。通过用于控制循 环条件中的变量,使得循环在合适的时候结束原创 2020-06-20 11:13:05 · 491 阅读 · 0 评论