随笔分类 - JavaScript
摘要:1、字符串、数组互转 //字符串转数组 let str = '一公司,二公司,三公司'; console.log(str.split(',')); //['一公司,二公司,三公司'] // console.log(Array.from(str)); // console.log([...str]);
阅读全文
摘要:项目中常见的一种数据处理的需求,就是将后端返回的json对象转成树形结构。 let data = [ { id: 1, parent: null, text: '菜单1' }, { id: 11, parent: 1, text: '菜单1-1' }, { id: 12, parent: 1, te
阅读全文
摘要:qs可以通过npm进行安装,是npm仓库一个管理包 npm install qs --S JSON.stringify() 是正常的json转换 qs.stringify() 是将对象序列化成url的形式,并且以&拼接 栗子: let data = { orgId: 1, systemName: '
阅读全文
摘要:1、双层循环去重 先定义原始数组第一个元素的数组,遍历原始数组,新数组与原始数组进行比较 如果不重复就添加到新数组中,最后返回新数组res 2、使用indexOf方法去重 indexOf()方法可返回某个指定的元素在数组中首次出现的位置 首先定义一个空数组res,然后调用indexOf方法对原来的数
阅读全文
摘要:首先浏览器是多线程的,JS是单线程的(浏览器只给js分配了一个线程) 单线程的特点就是一次只能处理一件事情。(后一个任务需要等待前一个任务的执行,这就可能出现长时间的等待) JS在单线程中实现异步机制主要依赖浏览器的任务队列 任务队列分为主任务队列,等待任务队列 在主任务队列自上而下执行的时候,如果
阅读全文
摘要:cookie用来保存客户浏览器请求服务器页面的请求信息 HTML5的WebStorage提供了两种API:localStorage(本地存储)和sessionStorage(会话存储) WebStorage的目的是克服由cookie所带来的一些限制,当数据需要被严格控制在客户端时,不需要持续的将数据
阅读全文
摘要:关于Cookie Cookie是一种能够让网站Web服务器把少量数据储存到客户端的硬盘或内存里,或是从客户端的硬盘里读取数据的一种技术。 用来保存客户浏览器请求服务器页面的请求信息,可以在HTTP返回体里,通过设置Set-Cookie来告诉浏览器端所要存储的cookie cookie所有浏览器都识别
阅读全文
摘要:邮箱验证 ^[A-Za-z]\w{3,17}@[1-9A-Za-z]{2,8}\.(com|cn|net)$ 手机号码验证 /^(13[0-9]|14[5-9]|15[012356789]|166|17[0-8]|18[0-9]|19[8-9])[0-9]{8}$/ 身份证号码验证 //第一代身份证
阅读全文
摘要:URLSearchParams 接口定义了很多个用来处理 URL 参数串的方法 他可以把对象转变成url上面查询信息的写法,例如a=1&b=2 可以把请求路由中的字符串 key=1 ,拼接成key:1 键值对格式,这样方便后端直接使用 用法: 配合fetch使用 配合axios使用
阅读全文
摘要:forEach forEach专门用来循环数组,可以直接取到元素,同时也可以取到index值 forEach forEach专门用来循环数组,可以直接取到元素,同时也可以取到index值 forEach专门用来循环数组,可以直接取到元素,同时也可以取到index值 存在局限性,不能continue跳
阅读全文
摘要:1、push() 向数组的末尾添加新内容 1、push() 向数组的末尾添加新内容 参数:要添加的项。传递多个用逗号隔开,任何数据类型都可以 返回值:新增后数组的长度 是否改变原数组:改变 let ary1 = [12,34,26]; ary1.push(100); //返回一个新的长度 lengt
阅读全文
摘要:Object.defineProperty() 方法会直接在一个对象上定义一个新属性,或在修改一个对象的现有属性,并返回这个对象(即第一个参数obj) 语法: Object.defineProperty(obj , prop , descriptor) vue.js就是通过Object.define
阅读全文
摘要:发布订阅模式,基于一个主题/事件通道,希望接收通知的对象(subscriber)通过自定义事件订阅主题,被激活事件对象(publisher)通过发布主题事件的方式被通知。 js中的事件监听机制就是一种观察者模式
阅读全文
摘要:Date对象方法: 当前用户本地时间 获取整数年 获取当前月(月份要加1) 获取当前周【0-6】星期日是0 获取时间日 获取小时 获取分钟 获取时间秒 获取毫秒数 获取当前时间距离1970年-1-1日上午八点的毫秒差(常用于时间戳) 获取时间戳的几种方式 这里顺便说下倒计时的原理以及公式 原理: 未
阅读全文
摘要:window.location 以下是window.location的属性 window.location.host window.location.hostname window.location.pathname window.location.hash window.location.href
阅读全文
摘要:引言:用户在浏览器操作的时候触发的一种行为就叫事件。 每个元素自身都有事件,只不过默认为null(没有事件,事件值就为undefined),当某个事件绑定一个函数之后,用户在操作浏览器的时候触发了这个事件,就会执行这个事件函数。 什么是事件冒泡和捕获呢? 来看一张图(简单明了~) 由上图我们可以得知
阅读全文
摘要:鼠标事件 键盘事件 框架/对象事件 表单事件 拖动事件 多媒体事件
阅读全文
摘要:indexOf和includes都代表检测数组或字符串中是否包含某一个元素 其中indexOf返回的是数值类型,而includes返回的是布尔类型 数组中的indexOf不能判断数组中是否有NaN,而includes可以做到 如果想查找某个元素在数组中的索引位置,就用indexOf 如果想查找某个元
阅读全文
摘要:获取行间样式 设置行间属性 client系列(可视区域) offset系列(偏移量) 使用时候要有定位,而且设置初始值;如果没有父级定位会跟着父级走 scroll系列(滚动) getBoundingClientRect() 获取元素位置 获得页面中某个元素的左,上,右,下分别相对浏览器视窗的位置 指
阅读全文
摘要:创建一个元素 向元素末尾添加一个子节点 将新的元素插入到指定元素的前面 删除一个子节点 替换子节点 克隆元素
阅读全文