杂七杂八

166 阅读3分钟

- 网站

1. 正则解析网址 https://regexper.com
2. 前端常用js库线上地址 https://www.bootcdn.cn/
3. 印记中文

- 知识点

1. class类中可以直接写赋值语句,如下代码含义是:给Student的实例对象添加一个属性school,值为PA,可以通过new出来的实例对象直接访问到school属性
    class Student {
        school = 'PA'
    }
2. 纯函数及高阶函数
   纯函数特点:只要是同样的输入(入参),必定得到同样的输出(返回值)  
   纯函数约束:(1) 不得在函数体内改写入参
             (2) 不会产生任何副作用,比如调用网络请求、输入和输出设备
             (3) 不能调用Date.now()或Math.random()等不纯的方法           
   高阶函数定义:若A函数接收的参数是一个函数,那么A就能称之为高阶函数;若A函数的返回值依然是一个函数,那么A就能称之为高阶函数。
   常见高阶函数:Promise、setTimeout、array.some等
   函数的柯里化:通过函数调用继续返回函数的方式,实现多次接收参数最后统一处理的函数编码形式。  
3. fetch 浏览器原生函数
   作用:发起ajax请求,不再使用XmlHttpRequest对象提交请求(老版浏览器不支持)  
   ----------------------------------------------
   try {
       const response = await fetch(url, options)
       const data = await response.json()
   } catch (err) {}
   ----------------------------------------------
4. ios低版本浏览器document.title不生效问题
   问题:异步获取的title,获取到title时页面已加载完,低版浏览器不再监听title的change事件,故设置后不生效。
   解决方案及原理:iframe是可以将另一个html嵌入当前页面的內联框架元素,异步获取设置了title后,创建一个iframe元素src指向一个很小的资源(如favicon),设置display:none后将元素插入页面,iframe根据src发送请求,从而触发title的监听,元素加载完成后移除。

5. 递归要素
   (1)找到递归终止条件(往往是当参数满足边际条件时达成)
   (2)递归公式:当前参数值与递归方法按重复规则参与计算
   ----------------------------------------------
   // 计算0到指定值的总和
   function sum(num) {
        // (1)
        if (num <= 0) {
            return 0
        } else {
            // (2)
            return num + sum(num - 1)
        }
   }
   ----------------------------------------------
   
6. ++运算顺序
   ----------------------------------------------
   var arr = [1, 5, 3]
   var i = 1
   // 取数组第二项后递增i值
   console.log(arr[i++]) // 5
   console.log(i) // 2
   ----------------------------------------------

7. 字符串方法padStart,padEnd
   用另一个字符串填充当前字符串(重复,如果需要的话),以便产生的字符串达到给定的
   长度。填充从当前字符串的开始(左侧)/结束(右侧)
   var str = ‘2333’;
   str.padStart(7, ‘1234’) // ‘1232333’;
   str.padEnd(7, ‘1234’) // ‘2333123’

8. overflow:hidden / auto; 切换导致的问题
   遮罩层时阻止底部内容滚动设置overflow:hidden,此时会导致底部内容整体右移,原
   因是原来overflow:auto时页面右侧有滚动条宽度,hidden后滚动条宽度消失,页面
   整体右移。

   解决方案:蒙层出现时给根元素填充border-right,宽度为滚动条宽度。
   https://blog.csdn.net/qq_45670012/article/details/101562830

9. position: relative;
   相对定位元素也脱离文档流,z-index设置高也可以展示在fixed定位的元素上面。应
   用:蒙层指引,蒙层只需要框出白底,内容还用原来元素,给原来元素设置比fixed层级
   更高的z-index