js
玉米_欣
这个作者很懒,什么都没留下…
展开
-
DOM事件中target和currentTarget的区别
target是事件触发的真实元素currentTarget是事件绑定的元素事件处理函数中的this指向是中为currentTargetcurrentTarget和target,有时候是同一个元素,有时候不是同一个元素 (因为事件冒泡)当事件是子元素触发时,currentTarget为绑定事件的元素,target为子元素当事件是元素自身触发时,currentTarget和target为同一个元素。<body> <ul id="box"> <Li.转载 2021-03-07 21:58:03 · 423 阅读 · 0 评论 -
只执行一次函数
只执行一次函数当实现支付,新增,保存等业务功能时,想要实现无论用户怎们点,我就执行一次的需求,那么我们就利用高阶函数的特性吧—函数作为返回值来实现吧。上代码function once (fn){ let done = false; return function(){ if(!done){ dont= true; fn.apply(this,arguments) } }}let pay = o原创 2020-11-29 18:28:36 · 836 阅读 · 0 评论 -
对比两个复杂的对象是否完全相等
对象的复杂程度{ attr1:{a:1,b:2}, attr2:'aaa', attr3:[1,2,3], attr4:[{abc:1,bcd:34,cd:'lalla'},{abc:134,bcd:55,cd:'lekif'}] .....}不考虑对象key的顺序实现代码diffObject(obj1, obj2) { if (!(obj1 instanceof Object) || !(obj2 instanceof Object)) {/* 判断不是对象 */原创 2020-05-24 21:24:08 · 631 阅读 · 0 评论 -
代码埋点
网站统计的基本流程首先,用户的行为会触发浏览器对被统计页面的一个http请求,这里姑且先认为行为就是打开网页。当网页被打开,页面中的埋点javascript片段会被执行,用过相关工具的朋友应该知道,一般网站统计工具都会要求用户在网页中加入一小段javascript代码,这个代码片段一般会动态创建一个script标签,并将src指向一个单独的js文件,此时这个单独的js文件会被浏览器请求到并执行,这个原创 2017-06-08 17:45:41 · 8174 阅读 · 0 评论 -
日期小插件
var flag = Array();var start = '2017-07-01'var end = '2017-08-01'SetFlag(start,end);for(var i=0;i<flag.length;i++){ console.log(flag)} //日期加上天数后的新日期 function AddDays(date,days){ va原创 2017-08-02 14:09:30 · 462 阅读 · 0 评论 -
判断某年某月有多少天
判断某年某月有多少天的简便方法原创 2017-09-04 10:02:20 · 1956 阅读 · 0 评论 -
前端小技巧日常积累
检查用户名是否合法$scope.check_name=function(data){ var reg = new RegExp(&quot;^[\u4E00-\u9FA5A-Za-z_0-9]+$&quot;); if(!data||!reg.test($scope.dialogDatas.mingcheng)){ $scope.is_regularname=true; ...原创 2018-11-13 22:38:16 · 238 阅读 · 0 评论 -
密码:大写字母 小写字母 数字 特殊字符(四种里至少三种)
正则表达式:大写字母 小写字母 数字 特殊字符(四种里至少三种)第一种:/((^(?=.*[a-z])(?=.*[A-Z])(?=.*\W)[\da-zA-Z\W]{8,16}$)|(^(?=.*\d)(?=.*[A-Z])(?=.*\W)[\da-zA-Z\W]{8,16}$)|(^(?=.*\d)(?=.*[a-z])(?=.*\W)[\da-zA-Z\W]{8,16}$)|(^(?=...原创 2018-11-13 22:42:17 · 66811 阅读 · 4 评论 -
判断一个数组中是否存在某个对象(数组中有多个对象,此时给一个对象,根据对象中的某个key判断出这个数组中是否存在这个对象)
数组arr:[{name:'wang':age:18},{name:'zhu':age:21}],对象obj:{name:'yu',age:22}根据obj的name判断arr中是否存在objlet index=this.arr.findIndex((item)=>{ if(obj.name===item.name){ return true; ...原创 2018-11-13 22:46:52 · 2478 阅读 · 0 评论 -
Apache Cordova 3.x -- deviceready事件
Cordova框架中第一个应该掌握的就是这个deviceready事件。采用Cordova开发的应用在运行的时候,Cordova提供的通过HTML5调用Native功能并不是立即就能使用的,Cordova框架在读入HTML5代码之后,要进行HTML5和Native建立桥接,在未能完成这个桥接的初始的情况下,是不能调用Native功能的。在Cordova框架中,当这个桥接的初始化完成后,会调用他自身转载 2016-12-21 13:56:31 · 1039 阅读 · 0 评论 -
JS原生之-----带导航的轮播图jq版
带导航的轮播图jq版原创 2016-09-29 20:31:13 · 1164 阅读 · 0 评论 -
JavaScript中This到底指哪个对象?
JavaScript中This到底指哪个对象?原创 2016-09-27 08:27:31 · 1676 阅读 · 0 评论 -
JavaScript之---function类型--学习笔记
function类型在ECMAScript中,Function(函数)类型实际上是引用类型,每个函数都是Function类型的对象,而且都与其他引用类型一样具有属性和方法。由于函数是对象,因此函数名实际上也是一个指向函数对象的引用类型变量1、函数的声明方式: ①普通的方式:function fun(num1,num2){原创 2016-07-27 09:46:05 · 381 阅读 · 0 评论 -
JavaScript之--引用类型、作用域、 基本包装类型、内置对象Math
引用类型例:function test(arr,str){ arr[0] =5; str = new String("world");}var arr1 =[1,2,3];var strs = new String("hello");test(arr1,strs);alert(arr[0]);//显示5原创 2016-07-27 17:37:53 · 410 阅读 · 0 评论 -
JavaScript之----继承
一:原型链继承继承是面向对象中一个比较核心的概念,ECMAScript只支持继承,不支持接口实现,而实现继承的方式依靠原型链完成。function Box(){ this.name="lee";}function Desk(){ this.age = 100;}Desk().prototype = new Box(); //De原创 2016-08-03 17:40:45 · 257 阅读 · 0 评论 -
JavaScript之----面向对象和原型
ECMAScript有两种开发模式:1、函数式(过程化),面向对象(oop)【好处:有了引用类型的对象可直接调用这个对象对应的方法】任何一个事物都可以看成是一个对象1、创建对象var stu1 = new Object(); //小丽 等于 新 老婆();stu1.name="小丽";//属性name就是一个变量stu1.study =function(){原创 2016-08-01 12:56:24 · 664 阅读 · 0 评论 -
JavaScript之----匿名函数、闭包
匿名函数匿名函数就是没有名字的函数(function () { alert("匿名函数()");})//匿名函数的调用(function () { alert("匿名函数()");})();(function (name) { alert(name);})("lis原创 2016-08-04 18:15:49 · 524 阅读 · 1 评论 -
JS原生之----滚动条
自定义滚动条,可滑可点可拖拽~~吼吼帅原创 2016-09-20 09:02:43 · 1921 阅读 · 0 评论 -
JS原生 之------放烟花喽
js原生 烟花效果 运动的运用原创 2016-09-23 08:46:56 · 1957 阅读 · 0 评论 -
JS原生之--圆周运动(转转转)
js原生实现球体的圆周(椭圆)运动原创 2016-09-22 08:59:45 · 2207 阅读 · 0 评论 -
JavaScript之正则表达式捕获
接JavaScript基础学习笔记使用exec()方法返回数组包含了和正则表达式匹配的正则表达式var reg =/[a-z]+\s\d{4}/;var str = "hello 2020";reg.exec(str);捕获性分组,非捕获性分组var reg =/([a-z]+)\s(\d{4})/;var str = "hello 2020";alert(原创 2016-07-25 15:15:15 · 586 阅读 · 0 评论