javascript
文章平均质量分 79
高地捣蛋鬼
目前无工作,欢迎各位老板砸单
展开
-
javascript 零宽断言,看这篇就足够了
1、定义先来看一个例子:在字符串 ‘北京市(朝阳区)(西城区)(海淀区)’ 中,取出北京市这段不被()包裹的字符我们分析一下这个题目:这个题,要求取出没有被() 包裹的内容也就是说,我要断言某个位置上的内容不含有完整的(),且这段内容的后面紧紧跟随的是(那么这段内容本身是什么并不重要那我可以构建一个正则表达式如下/.*?(?=\()/这个正则什么意思呢?假设你已经知道在正则中:. 表示任意字符*表示可以匹配任意的次数?表示重复前面的内容,要么零次,要么一次,最多重复一次所以原创 2021-07-26 19:01:21 · 2281 阅读 · 1 评论 -
前端导出 excel ,设置字体,列宽,行高,对其方式,合并单元格等效果
先看实现后的图原创 2021-06-23 18:15:45 · 4039 阅读 · 5 评论 -
import 与 require 到底是深复制还是浅复制
写在前面的话任何从网上抄袭来的消息,都有虚假的可能我在面试过程中,面试官问我,import 和 require 引入的区别答案当然不那么愉快了我问了其他的同事,有的说是引用与复制的区别,有的说是深拷贝与浅拷贝的区别我决定自己敲代码试一下。首先是require可以看到 a.js 中导出的 a,在 b.js 中一直是 0而 obj.name 从 hello 变化为了 world然后是 import ,这个就比较简单了可以看出 import 的表现和 require 是一致的结论:不管原创 2021-04-21 19:21:48 · 2023 阅读 · 1 评论 -
前端 日志自动滚动效果
一、需求当某个程序在后端运行的时候,前端经常要显示一个动态的进度条,或者 loading 的动画,或者百分比的数字当然,更好的效果是展示给用户程序运行的具体细节,比如运行中记录的日志这就好像电视剧结束后播放的演员表一样二、实现一般来说,有两种方法来实现这个需求。1、scrollIntoView()scrollIntoView()方法会滚动元素的父容器,使调用scrollIntoView的元素在父元素中可见。语法如下:element.scrollIntoView(); // 等同于elem原创 2021-02-01 20:35:54 · 2456 阅读 · 0 评论 -
leetCode 之 321.拼接最大数 js
题目如图思路假设一个数组 m,我们为了求解其按照内部元素顺序所能组成的所有的 n 位数的最大数,实现一个函数 getMax针对数组 m、n分别求取其最大值,想要使得最大值的位数之和为 k,则需要实现一个mergeArray 的方法,用来 merge 两个最大值数组代码 const m = [3, 4, 6, 5], n = [9, 1, 2, 5, 8, 3], k = 5 const getLargerNum = (m, n, k) => { cons原创 2020-12-02 17:33:43 · 360 阅读 · 0 评论 -
leetcode之 454.四数相加 II js
题目如图思路随机取两个数组,计算其内部任意数字的求和sum,并已和为键,出现次数为值,存储在一个对象中,如sum为1,sum出现次数为2,则 sumList = {1: 2}计算另外两个数组内部任意数字之和temp,并与 1 中的sum做对比,如果二者之和为 0(sun = -temp),则可记为出现一个元组。代码function sumCompute(a, b, c, d) { const l = a.length if (!l) { return 0 } const原创 2020-11-27 12:24:55 · 257 阅读 · 0 评论 -
将后台返回的UTC时间格式化为本地时间的方法
背景在前后端数据接口通信中,后台返回的时间往往是 UTC 格式的,即2020-10-12T10:31:35.891724+00:00这种。作为前端,我们需要将其转换为标准的本地格式,并用“YYYY-MM-DD HH:mm:ss”这种格式呈现给用户,用户才能看得懂。那么通常怎么将他们进行转换呢?探究先来理解下 UTC 时间和本地时间以北京为例,我在写这篇博客的时候,时间是:var d = new Date()d.toLocaleTimeString() // "上午10:46:42"而此时原创 2020-10-13 12:05:26 · 3008 阅读 · 3 评论 -
mock 学习笔记
文章目录1、安装2、使用3、语法3.1 DTD3.1.1 生成规则3.2 DPD3.2.1 内置的占位符3.2.2 扩展自定义占位符4、API5、更多示例1、安装npm i mockjs -D2、使用// 引入const Mock = require('mockjs')// 传递参数生成数据,如果传入的是fn,则返回fn执行后的返回值,否则,会返回根据template生成的值const data = Mock.mock(rurl?, rtype?, template|function( o原创 2020-09-01 12:42:34 · 436 阅读 · 0 评论 -
js 防抖和节流
节流简单讲就是尽管你非常频繁的触发事件,但是单位时间内我只会执行一次。比如窗口的 resize 事件,在拖动浏览器窗口的过程中,resize是会不断执行的,频率非常之高,简直令人发指。所以很有必要做一个节流,让事件按照一定的频率来执行,从而大大减少执行次数。function throttle(fn, wait=500){ let last = 0 return function (){ let now = Date.now() if(now - last > wait原创 2020-07-23 16:00:46 · 972 阅读 · 0 评论 -
写一个获取元素 xpath 的 chrome 插件
需求哈哈哈,本人还是很暖的,开会的时候大家一起聊天,聊到了测试是怎么做测试的。然后测试给我们演示了一下,每次编写测试用例,都要通过 chrome 获取元素的 xpath,很麻烦。我就多嘴问了一句,为什么不自己弄一个自动获取 xpath 然后读成想要格式的插件呢?测试:我不会,没研究过。老板:那你来帮他实现一个吧。***,你把需求理顺了放进 tapd 。我:反手给我自己一个大嘴巴子!梳理好在之前对 chrome 插件也略有所闻,嘿嘿。先想想需求,鼠标点击一个元素的时候,自动读取该原创 2020-07-22 11:08:57 · 1191 阅读 · 9 评论 -
记录一下 javascript 的一些方法
计算嵌套对象层级的深度我有这样一个对象,长得像佟丽娅,哈哈哈哈,做梦笑醒。重来!长得是这个样子:{ children: [ { children: [ { children:[ ] },{ children:[ ]原创 2020-07-10 10:12:25 · 204 阅读 · 0 评论 -
扩展 js Date 对象,实现时间美化
背景Date对象是 javascript 中常用的对象之一,用来提供和解析时间与日期。通常,后端返回的数据中,日期是2020-06-23T12:01:59+08:00这种,或是其他不符合前端显示需求的格式。因此,我们需要手动将日期转换成yyyy-MM-dd hh:mm:ss的格式,这个过程,就是美化时间的过程。如何实现时间美化一般,我们有几种方式来对时间进行美化。moment.jsmoment.js是一个第三方包,用来操作时间和日期。moment 提供了诸多方法,如moment().fo原创 2020-06-23 13:55:47 · 594 阅读 · 0 评论 -
js 根据对象的值进行排序
数组是有序集合,而对象是无序集合,但是我们偶尔也会遇到要针对对象进行排序,下面就直接上代码了var dict = { "x": 1, "y": 6, "z": 9, "a": 5, "b": 7, "c": 11, "d": 17, "t": 3 }; console.log('排序前...原创 2020-02-28 13:19:25 · 1764 阅读 · 0 评论 -
著名的“三门问题”的验证
啥是三门问题三门问题(Monty Hall problem)亦称为蒙提霍尔问题、蒙特霍问题或蒙提霍尔悖论。下面是题目的内容:“假设你正在参加一个游戏节目,你被要求在三扇门中选择一扇:其中一扇后面有一辆车;其余两扇后面则是山羊。你选择了一道门,假设是一号门,然后知道门后面有什么的主持人,开启了另一扇后面有山羊的门,假设是三号门。他然后问你:“你想选择二号门吗?”在这个题目中,选中汽车奖品就是...原创 2020-01-06 13:27:02 · 1956 阅读 · 0 评论 -
纯前端 excel 转成 json 文件下载到本地
纯前端上传 excel 并读取内容生成 json 文件下载到本地很多时候,产品那边给的资料都是表格形式的,但是我们一般都是用 json 格式。所以才有了这个文档。话不多说,上代码~~先去下载两个文件: 1. https://github.com/eligrey/FileSaver.js 2. http://oss.sheetjs.com/js-xlsx/xlsx.full.min...原创 2019-10-14 16:19:01 · 1090 阅读 · 3 评论 -
30行 js 帮你理解日历是如何生成的
javascript的日期对象Date 是编程中非常常用的对象之一,这篇文章旨在帮助大家熟悉日期对象,并理解使用日期对象来创建一个日历。言归正传先看看简单的效果,后面还有复杂的来看代码[javascript] var weeks = "一二三四五六日".split(''), monthDays = [31,28,31,30,31,30,31,31,30,3...原创 2018-08-23 14:56:35 · 3740 阅读 · 0 评论 -
使用echarts生成漂亮的3D地图
使用echarts生成漂亮的3D地图echarts是非常好用的图表插件,本文使用echarts来生成一个漂亮的3D地图效果准备资料第三方插件<script type="text/javascript" src="http://echarts.baidu.com/gallery/vendors/echarts/echarts.min.js"></script>...原创 2018-10-09 15:45:59 · 57026 阅读 · 29 评论 -
原生js无缝轮播插件详解面向对象
开始之前这篇博文主要讲如何使用原生js来实现一个兼容 IE9+ 的无缝轮播图。主要知识点如下:面向对象js优化之节流函数js运动效果大家自己复制代码去浏览器看下吧,哈哈哈,这里就不放图啦html结构<div class="sliders-wraper" id="rotation-1"> <ul class="sliders clear"> &l...原创 2019-04-12 17:52:08 · 467 阅读 · 0 评论 -
javascript 常用的函数
判断a是不是数组if (!Array.isArray) Array.isArray = arg => Object.prototype.toString.call(arg) === '[object Array]';Array.isArray(a) // true false判断a是否是对象const isObject = a => Object.prototyp...原创 2019-08-29 15:55:25 · 151 阅读 · 0 评论 -
前端导出多页pdf 带目录 页眉 页脚及页码
前段时间公司发布新需求,要求用户点击按钮可以导出pdf或者html到本地,pdf中要包含可点击跳转的目录,要分页记录页码,还有页眉和页脚,和后台的小哥哥配合试了好多方法,最终完成的效果还不错,在这里做个记录。需求点击导出html报告,则导出html文件到本地点击导出pdf报告,则导出pdf到本地言归正传因为设计也比较给力,直接把pdf样式设计成模板了,所以前端的工作就是按照...原创 2018-08-23 10:05:05 · 13035 阅读 · 17 评论