JavaScript
u013131203
这个作者很懒,什么都没留下…
展开
-
JS查询数组中出现次数最多的元素--通过reduce解决
const arrx = [1, 2, 3, 'x', 'y', 3, 6, 2, 1, 1, 'y', 'x', {a: 2}]const resx = arrx.reduce((acc ,cur) => { cur in acc ? acc[cur]++ : acc[cur] = 1 return acc}, {})console.log('resx', resx)...原创 2019-10-25 16:39:43 · 931 阅读 · 0 评论 -
JavaScript原型&&原型链与面向对象
一、基础&&问题1. 创建的对象有几种方式?2. 什么是原型、原型链、实例、构造函数?3. 关于new及其本质4. 实现继承的的方式有几种方式?继承的本质是啥?二、解答1. 创建对象的几种方式// 方式一:字面量的方式var o1 = {name: 'shawn'}var o11 = new Object({name: 'shawn11'})// ...原创 2019-08-14 15:00:10 · 100 阅读 · 0 评论 -
JavaScript数组扁平化处理
let testArray = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]function simpleNormalizeChildren (children) { for (let i = 0; i < children.length; i++) { if (Array.isArray(children[i])) { return Arr...原创 2019-01-17 09:20:07 · 337 阅读 · 0 评论 -
ES6利用Proxy和Reflect实现观察者模式
// 观察者模式const queuedObservers = new Set()const observe = fn => queuedObservers.add(fn)const observable = obj => new Proxy(obj, {set})function set(target, key, value, receiver) { const re...原创 2019-01-03 15:12:14 · 290 阅读 · 0 评论 -
javascript数组的深度拷贝
声明: 本文来自:https://segmentfault.com/a/1190000009542462 仅作收藏这两在写js时遇到 数据的拷贝问题如果 数组是 这样子的: let arrOne = [1, 2, 3, 4, 5] ,1. 如果直接赋值 let arrTwo = arrOne 那么属于浅拷贝 拷贝的是原数组(arrOne)的引用,改变 arrTwo中的任何操...转载 2018-10-31 19:51:30 · 164 阅读 · 0 评论 -
es6异步加载
import _ from 'lodash'fetchSuggest: _.debounce(function () {}, 500),用户输入 在判断 用户连续输入的 情况下 不执行查询操作,一旦用户输入间隔超过500ms 执行查询操作...原创 2018-10-06 11:20:53 · 884 阅读 · 0 评论 -
常见的正则表达式
验证数字的正则表达式集 验证数字:^[0-9]*$ 验证n位的数字:^\d{n}$ 验证至少n位数字:^\d{n,}$ 验证m-n位的数字:^\d{m,n}$ 验证零和非零开头的数字:^(0|[1-9][0-9]*)$ 验证有两位小数的正实数:^[0-9]+(.[0-9]{2})?$ 验证有1-3位小数的正实数:^[0-9]+(.[0-9]{1,3})?$ 验证非零的正整数:^\+...转载 2018-09-26 16:53:48 · 78 阅读 · 0 评论 -
JS将DD/MM/YYYY to YYYY-MM-DD日期格式转换
DD/MM/YYYY to YYYY-MM-DD 格式转换 const YYYYMMDD = time.replace(/\//g, '').replace(/^(\d{2})(\d{2})(\d{4})$/,"$3-$2-$1")原创 2018-09-20 14:23:55 · 6306 阅读 · 1 评论 -
慢慢走出javascript回调之坑
1.逻辑混乱的代码:function attach (node, status, done) { node.addEventListener('click', function () { var id = node.dataset.id; var endpoint = '/api/v1/records/' + id; http.get(endpoint, func...原创 2018-08-18 11:24:28 · 199 阅读 · 0 评论 -
Javascript中创建对象的几种方式
1.直接创建 var obj = new Object();2.直接声明的方式:var person = {aa:aa,bb:bb};2.使用对象构造器得方式:函数的方式function person(A,B,C){ this._A = A; this._B = B; this._C = C; this.sleeping = sleep; fu...原创 2018-07-22 22:30:51 · 204 阅读 · 0 评论 -
window.URL.createObjectURL Blob URL无法在Microsoft IE和Edge中打开
本文转载,仅作收藏:https://www.51-n.com/t-4535-1-1.htmlwindow.URL.createObjectURL()可以直接生成blob:开头的链接,该链接产生于浏览器端,不会占用服务器资源。window.URL.createObjectURL()在IE10, IE11以及Microsoft Edge中生成的blob:链接,你不能把它加到一个<a>节点上...转载 2018-07-03 10:15:16 · 10745 阅读 · 0 评论 -
vue自定义过滤器
在main.js中自定义过滤器 ¥过滤器Vue.filter('moneyFormat', function(value) { if(!value) return '0.00'; var intPart = Number(value).toFixed(0); //获取整数部分 var intPartFormat = intPart.toString().replace(/...转载 2018-06-12 18:29:51 · 746 阅读 · 0 评论 -
javascript静态页面传值的三种方法---JavaScript静态页面值传递之Window.open篇
本文转载至:http://www.jb51.net/article/43106.htm转载 2016-12-30 21:19:29 · 1908 阅读 · 0 评论 -
javascript静态页面传值的三种方法---静态页面值传递之Cookie篇
本文转载至:http://www.jb51.net/article/43106.htm转载 2016-12-30 21:17:24 · 4050 阅读 · 0 评论 -
javascript静态页面传值的三种方法---静态页面值传递之URL篇
本文转载至:http://www.jb51.net/article/43106.htm转载 2016-12-30 21:10:58 · 647 阅读 · 0 评论 -
JS通过操作Element的Css来实现隐藏和显示(本示例只有隐藏)
html>html lang="en" xmlns="http://www.w3.org/1999/html">head> meta charset="UTF-8"> title>Collapsed Form Elementstitle> style> .label{ width: 400px; margi转载 2016-12-15 15:47:51 · 2256 阅读 · 0 评论 -
JS的DOM操作元素示例1--删除添加元素
-- 删除添加元素html>html lang="en">head> meta charset="UTF-8"> title>Adding and Removing Elementstitle> style> .overlay{ background-color: #000; opacity: 0.5;原创 2016-12-15 11:31:28 · 3223 阅读 · 0 评论 -
JavaScript操作表格
html>html lang="en">head> meta charset="UTF-8"> title>Adding and Removing Elementstitle> style> table{ border-collapse: collapse; } td,th{原创 2016-12-15 10:45:35 · 414 阅读 · 0 评论