随笔分类 - js进阶
摘要:
SSE简介 SSE(Server-Sent Events)是一种实现服务器主动向客户端推送数据的技术,也称为 “事件流”。 它基于 HTTP 协议,是一个get请求。 利用了其长连接特性,从而实现:服务器向客户端的实时数据推送。 但客户端不能通过 SSE 向服务端发送数据。因此它是单向通信的。 SS
阅读全文

摘要:捕获异常 捕获异常:处理可能出现的异常,当发生错误后,我们对它进行处理,不让程序崩溃。 异常处理 try-catch-finally try{ // 可能出现异常的:代码1 }catch(err){ // 当代码发生异常后,会执行这里,异常对象会传递给 err // 代码不发生异常,则不会执行这里
阅读全文
摘要:使用node实现请求的需要的接口 newList.js // var express = require('express'); var router = express.Router(); // 动态路由处理 for (let i = 1; i <= 100; i++) { router.get(
阅读全文
摘要:使用 eval 将字符串当做代码来执行 function zhiXing(strCode){ eval(strCode) } zhiXing("console.log('hello')") 在控制台会输出: hello eval 的简单介绍 1,eval是同步代码 2,eval()执行代码时,读取变
阅读全文
摘要:ES6 数字类型范围在-2^53 + 1 与 2^53 - 1 在ES6(ECMAScript 2015)之前, 所有的数字都被表示为双精度64位浮点数(遵循IEEE 754标准) 也就是说:js能够安全的表示整数范围是从{-2^53 + 1, 2^53 - 1} 如果超出这个范围会出现精度丢失 我
阅读全文
摘要:闭包 闭包官方的解释:闭包(closure)是一个函数以及其捆绑的周边环境状态(词法环境)的引用的组合。 也就是说:闭包让开发者可以从内部函数访问外部函数的作用域。 在 JavaScript 中,闭包会随着函数的创建而被同时创建。 上面这3句话是mdn的解释。太复杂了。笨笨的我理解不了。 我的理解:
阅读全文
摘要:消息队列的解释 每个任务都有一个任务类型。 同一个类型的任务必须在一个队列中。 不同类型的任务可以分属于不同的队列中。 在一次事件循环中,浏览器可以【根据实际情况】从不同的队列中取出任务执行。 浏览器必须准备好一个微队列,微队列中的任务优先其他所有类型的任务。 chrome中的常见队列 在 chro
阅读全文
摘要:实现放大镜的整体思路 1.当鼠标放在图片上的时候,出现蒙层。 2.出现蒙层,让鼠标在蒙层中心 3.限制蒙层移动的范围 4.放大镜移动 最终实现的效果 鼠标放上去的时候,出现一个蒙层。 蒙层的移动范围只能在图片里,不能超出范围。 移动蒙层时,右侧会出现图片的放大部分。 移除图片的范围,放大镜消失。 鼠
阅读全文
摘要:
点击当前元素高亮的实现;点击右侧按钮,滚动到对应区域;滑动到对应区域右侧按钮自动高亮;scroll 事件特别说明;每个区域固定高度实现导航;代码:每个区域高度不确定导航
阅读全文

摘要:#### 场景描述 ``` 今天遇见一个问题,那就是产品希望在弹出来的窗口。 可以移动这个弹窗的位置 增加用户体验,我们直接使用的element-ui中的 Dialog 对话框 我们现在需要拖拽标题,移动元素位置 ``` #### 元素拖拽的思路 ``` 要让元素按下移动,我们需要实现以下几个步骤:
阅读全文
摘要:
重新学习这两个API的起因 在本周五有线上的项目,16:30开始验证线上环境。 开始都是顺顺利利,一帆风顺。 大概17:50左右,我正在收拾东西。 准备下班去王者峡谷骑着我的船溜达一圈。 可是天降意外,给我派了一个bug。 测试给我说:有一条数据的详情页有数据但是在页面中没有显示数据。 不可能,绝对
阅读全文

摘要:toFixed 的简单介绍 toFixed() 方法可把 Number 类型的数字通过四舍五入为指定小数位的字符串。(将数字类型转化为字符串类型) 也就是说toFixed只能够处理数字类型的. 字符串类型的要报错. '1.23456'.toFixed(2) 会报错 toFixed 输出的类型是字符串
阅读全文
摘要:前端主题切换 有些时候我们在网站上会进行夜间/白天模式的切换。 这里我们介绍一种流行的切换模式 css变量 + 动态类名来进行切换 非常的简单。废话不多说。我们直接上代码。 第1种是通过 类名和变量来实现的 第2种是通过 属性和变量还实现的 最后1种 给body加 filter: invert(1)
阅读全文
摘要:场景描述 简单的说一下场景描述:这个页面有三个部分组成的. 顶部的头部信息--导航栏--内容 当页面滚动的时候。导航栏始终是固定在最顶部的。 我们使用的第一种方案就是使用css的粘性定位 position: sticky; [ˈstɪ ki] 先说一下css的position的属性 position
阅读全文
摘要:对象中有时间类型的时候(时间类型会被变成字符串类型数据) const obj = { date: new Date() } console.log(typeof obj.date 'object') //true const objCopy = JSON.parse(JSON.stringify(o
阅读全文
摘要:reduce 的学习方法 array.reduce(callback(prev, currentValue, index, arr), initialValue) //简写就是下面这样的 arr.reduce(callback,[initialValue]) callback (执行数组中每个值的函
阅读全文
摘要:定义和用法 forEach() 调用数组的每个元素,并将元素传递给回调函数。 注意: forEach() 对于空数组是不会执行回调函数的。 forEach 是不能够进行链式调用的,因为它返回的值是undefind。 forEach 不会直接改变数组,但是可能会被 callback 函数改变。 用法:
阅读全文
摘要:Array.find((item,indexArr,arr)=>{}) 掌握 找出第一个符合条件的数组成员。 它的参数是一个回调函数,对所有数组成员依次执行该回调函数。 直到找出第一个返回值为true的成员,然后返回该成员。 如果没有符合条件的成员,则返回undefined。 -- 找出第一个大于1
阅读全文
摘要:看下面的代码 <script> function Person(sex,age){ this.sex=sex; this.age=age; } // 通过原型添加方法 Person.prototype.sayHi=function(){ console.log('你好呀') } var per=ne
阅读全文
摘要:toString方法的三个作用: 1.返回一个【表示对象】的【字符串】 2.检测对象的类型 Object.prototype.toString.call(arr) "[object Array]" 3.返回该数字对应进制的字符串。 console.log(10.toString(2)) //10专为
阅读全文