![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
js
文章平均质量分 64
有趣的万里挑一
这个作者很懒,什么都没留下…
展开
-
前端常用设计模式
什么是设计模式假设有一个空房间,我们要日复一日地往里 面放一些东西。最简单的办法当然是把这些东西 直接扔进去,但是时间久了,就会发现很难从这 个房子里找到自己想要的东西,要调整某几样东 西的位置也不容易。所以在房间里做一些柜子也 许是个更好的选择,虽然柜子会增加我们的成 本,但它可以在维护阶段为我们带来好处。使用 这些柜子存放东西的规则,或许就是一种模式。单例模式保证一个类仅有一个实例,并提供一个访问它的全局访问点function SetManager(name) { this.manager原创 2022-02-24 16:04:25 · 102 阅读 · 0 评论 -
Typescript基础(一)
Typescript基础(一)我们为啥不继续使用js,学ts是无意义的内卷吗?安装 TypeScript编译一个 TypeScript 文件通过一个函数理解ts的基本使用原始数据类型在ts中的show time布尔值字符串空值Null 和 Undefined任意值类型推论什么是类型推论联合类型访问联合类型的属性或方法对象的类型——接口什么是接口只读属性我们为啥不继续使用js,学ts是无意义的内卷吗?借用某个大佬的话来回答这个问题:需求变了、接口改了、数据类型变了的时候,你只要修改你定义好的type,要改原创 2022-01-18 18:17:42 · 1307 阅读 · 1 评论 -
react开发中遇到的一个百度都搜不到的bug
报错信息如下,node_modules\watchpack\lib\chokidar.js: 'return' outside of function (4:1)在出这个错误的时候,你的代码中可能被自动添加了这个玩意,import { CleanPlugin } from "webpack";将它删除即可原创 2021-04-12 19:34:57 · 664 阅读 · 5 评论 -
怎么让英文单词的首字母大写?
function test(str){ const a = str.split(" ").map(item=>item[0].toUpperCase()+item.substring(1)).join(" ") return a }document.write(test("a23 b23 ccc2123 1"));输出结果:A23 B23 Ccc2123 1原创 2020-11-26 09:39:10 · 589 阅读 · 0 评论 -
手写轮播图,原生Js实现轮播效果 效果
手写轮播图,原生Js实现轮播效果效果废话不多说~ 直接上代码<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <link rel="stylesheet" href="./lunbo.css"原创 2020-09-25 11:56:52 · 209 阅读 · 0 评论 -
ES6总结笔记(四)字符串的拓展部分1
字符的Unicode表示法javaScript允许使用\uxxxx来表示一个字符,且这个字符在\u0000-\uFFFF之间例如,\u0061可以表示字符’a’但是’\u20BB7’,js就不能再正确识别,他会显示一个空格,后跟一个数字7。ES6对此作了改进,只要将码点,也就是\uxxxx里面的x,放入大括号内,就可以正确解读,'\u{20BB7}'// '吉'codepointAt()Js内部固定以UTF-16格式存储,每个字符固定为2个字节,对于需要一个字符需要4个字节编码的字符,也就原创 2020-11-08 19:46:13 · 100 阅读 · 0 评论 -
最通俗的理解什么是冒泡
首先,可以把他理解成踢球,不用单纯的理解成父传子或者子传父这一个方向,比如我们用事件绑定的是父亲,从父亲到儿子,父亲就把这个事件踢球一样,给了儿子,儿子有了这个事件。对应的函数就会执行,然后从儿子出来。进入父亲,又踢了一次球。那我们现在理解下onmouseenter和onmouseoveronmouseenter:不支持冒泡mouseenter在这个过程中只会触发一次事件,是因为他不能冒泡,也就是从父亲到儿子,没有把球传过去,从儿子离开,再回到父亲。自然也就没有球了,因为前面的球断掉了,这里的球就是原创 2020-11-06 19:28:07 · 836 阅读 · 0 评论 -
ES6总结笔记(三)变量的解构赋值
什么是解构ES6允许按照一定模式从数组和对象中提取值,然后对变量进行赋值,这被称为解构。let [a,b,c] = [1,2,3]相当于let a = 1let b = 2let c = 3解构的规则按照模式进行匹配,等号的左右两边的模式相同,左边的变量就会被赋予对应的值let [foo,[[bar],baz]] = [1,[[2],3]];相当于let foo = 1let bar = 2let baz = 3特殊的几种解构let [,,third] = [1,2,3原创 2020-11-01 17:25:43 · 214 阅读 · 0 评论 -
ES6总结笔记(二)let和const
作用域let和const声明的变量只在所在代码块生效,var声明的变量在全局都生效{ let a = 1; var b = 2; const c = 3;}a // ReferenceError:a is not definedb // 2c // ReferenceError:c is not defined经典案例1var a = []for(var i = 1;i<10;i++){ a[i] = function(){ console.log(i)原创 2020-10-25 14:13:13 · 110 阅读 · 0 评论 -
js正则验证身份证号码
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>测试身份证号码</title></head><body> <!-- <原创 2020-10-22 11:14:42 · 2614 阅读 · 0 评论 -
纯JS手写超级简单贪吃蛇
看看效果先上代码,表示尊敬<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>贪吃蛇画布</title> <!-- css部分需要放在头部,因为浏览器绘原创 2020-10-21 17:15:06 · 619 阅读 · 0 评论 -
js数组中的数组去重和多维数组去重
var arr1 = [1,[2,3,[5,4,[4,[1]]]]]var arr2 = [1,2,2,2,2,4]function getDeepth(array) { function sum(arr, flag) { return arr.reduce(function (total, item) { var totalDeepth ; if (Array.isArray(item)) { to原创 2020-10-19 10:40:26 · 288 阅读 · 2 评论 -
ES6总结笔记(一) ES6简介
ES6和JavaScript的关系前者是后者的的标准,后者是前者的实现ES6和ES5的关系ES6的第一个版本是ES5(ES2015),ES6可以泛指ES2015,ES2016,ES2017等等ES6转化为ES5通过Babel转码器转码前的ES6代码items.map(item=>item+1)转码后的ES5代码items.map(function(item){ return item+1; });项目中配置.babelrc文件以设置转码规则以react为例先要安原创 2020-10-18 11:53:43 · 275 阅读 · 2 评论