85、minN此段代码输出数组中前 n 位最小的数。const minN = (arr, n = 1) => [...arr].sort((a, b) => a - b).slice(0, n);minN([1, 2, 3]); // [1]minN([1, 2, 3], 2); // [1,2]86、negate此函数功能将不满足函数条件的内容筛选出来。const negate = func => (...args) => !func(...args);[1, 2, 3
64、getColonTimeFromDate用于判断程序运行环境是否在浏览器,这有助于避免在node环境运行前端模块时出错。const isBrowser = () => ![typeof window, typeof document].includes('undefined');isBrowser(); // true (browser)isBrowser(); // false (Node)65、isBrowserTabFocused用于判断当前页面是否处于活动状态
43、getColonTimeFromDate此段代码从Date对象里获取当前时间。const getColonTimeFromDate = date => date.toTimeString().slice(0, 8);getColonTimeFromDate(new Date()); // "08:38:00"44、getDaysDiffBetweenDates此段代码返回两个日期之间相差多少天const getDaysDiffBetweenDates = (dat
22、deepFlatten通过递归的形式,将多维数组展平成一维数组。const deepFlatten = arr => [].concat(...arr.map(v => (Array.isArray(v) ? deepFlatten(v) : v)));deepFlatten([1, [2], [[3], 4], 5]); // [1,2,3,4,5]23、default去重对象的属性,如果对象中含有重复的属性,以前面的为准。const defaults = (obj, ...
JavaScript 是目前最流行的编程语言之一,正如大多数人所说:“如果你想学一门编程语言,请学JavaScript。”FreeCodeCamp的创始人 Quincy Larson 在最近的一次采访中被问到哪种语言开发人员应该首先学习。他回答:“ JavaScript。”“软件正在吞噬世界,JavaScript正在吞噬软件。JavaScript每年都在变得越来越占主导地位,而且没人知道最终会取代它的是什么。" 如果您没有充分的理由学习一种新语言(例如您的工作要求您维护非JavaScr
一、前言 以下场景往往由于事件频繁被触发,因而频繁执行DOM操作、资源加载等重行为,导致UI停顿甚至浏览器崩溃。 1. window对象的resize、scroll事件 2. 拖拽时的mousemove事件 3. 射击游戏中的mousedown、keydown事件 4. 文字输入、自动完成的keyup事件 实际上对于window的resize事件,实际需求大
function removeArr(arrayA,arrayB){ return arrayA.filter((item) => !(arrayB.some((i) => i == item))); } arrayA.filter(function (item) { retur
新手接触前端的时候,大多数会依赖Jquery或者其他框架提供的现成组件,来完成功能需求。但是,这样的弊端就是你无法定制想要的效果,而且加载其他框架的静态资源文件,由于把所有组件和相关库加载进入,会显得臃肿多余。当然,模块化开发时,影响不会太大。今天,阳光明媚。我给大家带来以下示例,并手把手讲解。简洁tabs效果JS选项卡,代码并不多为了新手更好的理解,我将侧重JS部分。CSS部分HTML结构以上为样式结构。可以看见,非常简单。值得注意的是这里用了.tab-content:not(:first-c
点击链接后退页面:<a href="javascript:history.go(-1)">回到上一个网页</a>——修改placeholder提示的样式:1.除IE外通用写法类名或标签名::placeholder {color: red;}2.加兼容前缀写法css超出一行显示省略号:给定宽度(width:100px)、超出隐藏(overflow:hidden)、强制在同一行显示(white-space: nowrap)、省略号(text-overflo
p 标签是默认是自动换行的,因此设置好宽度之后,能够较好的实现效果,但是最近的项目中发现,使用 ajax 加载数据之后,p 标签内的内容没有换行,导致布局错乱,于是尝试着使用换行样式,虽然解决了问题,但是并没有发现本质原因,本质在于,我当时获取的数据是一长串的数字,浏览器应该是对数字和英文单词处理方式相近,不会截断。先给出各种方式,再具体介绍每一个属性。强制不换行:p { white-space:nowrap; }自动换行:p {&nb