js
~倾半世阳光
生活的乐趣还在于,你昨日的最大痛楚,极可能造就你明日最大力量。
展开
-
JavaScript之Object对象方法
简介: 本片文章,参考web开发,MDN。我只是记下一阅读笔记,提高自己的记忆,好记性不如烂笔头; Object.create() Object.create()方法创建一个新对象,使用现有的对象来提供新创建的对象的__proto__。 var person = { interest: 'play' } var liu = Object.create(person); console....原创 2019-11-22 14:04:51 · 281 阅读 · 0 评论 -
什么是防抖和节流?有什么区别?如何实现?
一、防抖 场景:在滚动事件中需要做个复杂计算或者实现一个按钮的防二次点击操作。这些需求都可以通过函数防抖动来实现。尤其是第一个需求,如果在频繁的事件回调中做复杂计算,很有可能导致页面卡顿,不如将多次计算合并为一次计算,只在一个精确点做操作。 一般的防抖会有immediate选项,表示是否立即调用。 // 这个是用来获取当前时间戳的 function now() { return +new ...原创 2019-07-18 14:34:34 · 27772 阅读 · 0 评论 -
在js中犯了低级错误
应该没有人会浏览这篇博客。我就是写给自己看的 var a = 100 if(0<a<10){ console.log('true') }else{ console.log('false') } 可以看到无论a的值如何大于10。返回的结果依旧是true..... 我真的很菜啊,去年同事就遇到这样的情况,我也是百思不得其解。后来还是觉得自己愚蠢。今日我又...原创 2019-04-26 20:29:17 · 197 阅读 · 4 评论 -
js的对象深拷贝
面试遇到对象深拷贝的问题,我没想到这样的问题,在js面试中也能真实的遇到。还好,在面试的前夜,我刷到了这道面试题。自然就拿到了offer。 首先看一个例子 var a = { name: 'jack' }; var b = a; a.name = 'bill'; console.log(b); 如果,你对对象没有基础的了解,你一定会犹豫此时的打印结果。真实的打印结果是: 因为...原创 2019-03-26 22:14:39 · 126 阅读 · 0 评论 -
map函数,filter函数
map 函数用在 JavaScript 数组中。map 函数通过将数组的每个元素传递给转换函数,并返回一个新数组。 例子:去除数组中包含字母的元素。 var arr = ['1', '2', '3', 'd', 'e', '4', '5', '6', 'g', 'g', 'h']; var re = /[a-z A-Z]/; var newArr = arr.map((ele) =&...原创 2019-03-23 15:13:58 · 614 阅读 · 0 评论 -
根据对象属性名合并属性值,然后排序
//老数组list var list = [{ name: 'a', num: 1 }, { name: 'b', num: 1 }, { name: 'c', num: 6 }, { name: 'a', num: 3 }, { name: 'a', num: 1 }]; var allArr = [];//新数组 for (var i = 0; i < list...原创 2019-03-12 11:30:57 · 383 阅读 · 0 评论 -
移动端使用rem布局
/** * 以设备宽375作为基准,即375*667,即iPhone6s * 1rem = 100px */ function setFontSize () { const windownWidth = window.innerWidth const size = (windownWidth / 750) * 100 const remSize = size < 100 ...原创 2019-03-10 20:57:01 · 126 阅读 · 0 评论 -
前端面试题(持续更新)
css知识点: 1.实现一个三角形; .sanjiao{width: 0;height: 0;border-width:10px;border-color:red transparent transparent transparent;border-style:solid;} 2.让所有div外面的p标签背景颜色为黄色; div+p{background-color: yellow;} ...原创 2019-03-06 21:09:55 · 115 阅读 · 0 评论 -
jq实现验证码倒计时效果
其实,不是复杂的实现。但是,可能提高些开发效率,放在自己的公共方法里。 /*验证码倒计时*/ function code(obj) { obj = obj || $("input[type=button]"); var num = 60; var timer = setInterval(function () { if (num > 1) ...原创 2018-12-12 10:52:12 · 1842 阅读 · 0 评论 -
一个正则表达式-用户输入密码(8位以及以上,需要包含,数字字母)
var reg = /^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{8,30}$/; console.log(reg.test(password)); if (!reg.test(password)) { $('.errorAgainPassword').css('visibility', 'visible').text('请输入8位以上密码,密码中必须同时包含...原创 2018-12-10 20:36:16 · 11995 阅读 · 0 评论