javascript
文章平均质量分 75
懒得懒
竹杖芒鞋轻胜马,谁怕?
展开
-
JS实现一键复制
需求 接口报错时,给出错误提示,并给用户提供一键复制错误参数的功能实现“使用textarea支持换行,使用input不支持换行”====》使用textarea 会保留原始信息的格式,否则,复制到的数据没有格式// 提供一键复制content的功能export function copy(content) { const text = document.createElement('textarea'); text.value = content; document..原创 2022-01-25 11:10:12 · 1051 阅读 · 0 评论 -
Array在原型prototype上定义方法及如何使用
一、如何定义 项目中,需要使用到Array的flat方法,结果有兼容问题,于是重写if (!Array.prototype.flat) { Array.prototype.flat = function(count) { console.log('flat-----------'); let c = count || 1; let len = this.length; let exe = []; if (this.length ...原创 2020-11-11 11:08:20 · 1141 阅读 · 0 评论 -
纯JS实现课表
一、需求描述如下图所示:实现一个课表,对应现实生活中对的课表:一门课一天内,可以对应多个节次。二、实现思路及代码 2.1实现思路: flex布局+position 分两步:1、先画出一个空课表;2、在正确的位置上显示课程名称2.2数据结构 数据中需要包含:课程名称(course)、对应周几(week)、对应的开始节次(startSection)、结束节次(endSection),如下const data = [ ...原创 2020-08-25 14:28:33 · 4308 阅读 · 1 评论 -
JS单例模式实现一个定时器
一、需求 有个页面需要前端轮询接口,这种情况下肯定会考虑到定时器:进入页面时,开启定时器,切换路由时清理定时器,所以可以用dva中的subscriptions(https://dvajs.com/api/#reducers)来处理,但是,我们的需求是:根据接口中的某个字段判断是否要启动定时器,而这个接口和定时器执行的接口是同一个。此时,经过研究,决定使用单例模式创建一个定时器,这样既能保证定时器唯一,也能动态控制定时器(启动和清理)二、代码export default (funct...原创 2020-08-13 13:44:53 · 507 阅读 · 0 评论 -
null和undefined
一、前言 在项目中发现了一个现象:在对变量初始化时,我习惯用空字符串(‘’)、空对象({}),空数组([])、0等来初始化,却发现其他同事惯用undefined,而在bizcharts图表中,null又可以使得某个数据不显示……好吧,直到现在还是没弄懂到底有啥区别,哪种更好,只能是根据不同的需求特殊处理了,比如:折线图某个横坐标没有数据,如果需求是不显示对应的点,则处理为null,否则可以处理为0,其他情况就看各人习惯了。 当前,说了一大堆废话,但此次只比较null和undefine...原创 2020-06-12 10:46:07 · 362 阅读 · 0 评论 -
前端实现按照学期进行排序(JS之sort)
最近开发中遇到一个排序的问题,比如前端需要对下列数据进行排序: "第1学期"、"第2学期"、"第3学期"、"第4学期"、"第5学期"、"第6学期"、"第7学期"、"第8学期"说实话,一直觉得像排序这种数据处理,应该后端实现,可是由于这块逻辑太复杂了,后端代码已经很复杂了,在这种前后端都可以做的情况下,想想,还是前端来实现吧。 最初的思路是使用switc...原创 2020-04-13 15:27:50 · 806 阅读 · 0 评论 -
一个由addEventListener引发思考
经同事推荐,最近在看犀牛(JavaScript权威指南),刚刚看到前几页,有个提到客户端JavaScript的例子,模仿着,写着类似的代码,突然想到,如果是带参数的函数,改怎么调用,于是……一、功能简述 用JavaScript 给一个div添加点击事件,当点击之后,div中的文字边红色二、思路过程 最终实现的代码:<!DOCTYPE HTM...原创 2019-03-20 14:53:46 · 518 阅读 · 2 评论 -
工具方法之数组操作相关
最近工作中,遇到很多情况下需要操作两个数组,比如:从一个数组中删除另外一个数组、求两个数组的公共元素……工作优先,于是磕磕碰碰的封装了一个方法,用于从一个数组中移除另外一个数组,代码如下:export function removeEleFromArr(arr: Array<any>, ele: any): Array<any> { const index...原创 2019-08-20 15:56:47 · 246 阅读 · 0 评论