js
qq_39201210
这个作者很懒,什么都没留下…
展开
-
对象
var people = { name : '张三', age : 20, sex : 'male', health : 100, smoke : function(){ console.log('吸烟有害健康'); this.health--; }, sport : function(){ console.log('运动有益身心'); this.health++...原创 2018-08-20 18:21:30 · 145 阅读 · 0 评论 -
正则表达以及字符串的方法
1.正则表达 // 正则// 1.检验一个字符串首尾是否有数字// \d是数字var reg = /^\d|\d$/g; //^开头 $结尾 |或var str = '123abc2';console.log(reg.test(str));console.log(str.match(reg));// RegExp对象方法// test(); //检查字符串中...原创 2018-12-20 16:16:21 · 322 阅读 · 0 评论 -
冒泡、捕获、阻止默认事件
Ele.addEventListener(type,fn,false); false为冒泡 true为捕获在同一个ele上可以绑定相同type事件,可以一个为冒泡一个为捕获。会先执行捕获事件事件冒泡:从代码结构上(非视觉上)嵌套关系的元素,会存在冒泡功能。点击子元素,会从子元素依次往父元素,触发事件。事件捕获:代码结构上(非视觉上)嵌套关系的元素,会存在捕获功能。点...原创 2018-12-13 19:57:42 · 151 阅读 · 0 评论 -
VUE的组件使用
<body> <div class="box1"> <!-- 调用组件,直接用标签,组件名 --> <cp1></cp1> </div> <div class="box2"> <cp1></cp1&am原创 2018-11-23 15:50:15 · 98 阅读 · 0 评论 -
关于vue遍历for使用amazeui的折叠面板
amazeui的折叠面板步骤:给父盒子一个id: accordion给点击的target一个data-am-collapse="{parent: '#accordion', target: '#do-not-say-1'}给目标面板一个id,为点击面板的target值如do-not-say-1由于如果需要用vue 做for循环,将index或者data中唯一id作为id时,只知道...原创 2018-11-22 14:53:41 · 755 阅读 · 0 评论 -
DOM操作
1、用原生js写面板由于在循环btn的时候,i会形成闭包,将最终的i保存,无法找到想要的i。这时需要用立即执行函数将i存到ao。保存在ao里面html<div class="wrap"> <button class="active">1</button> <button>2</button> &原创 2018-10-17 16:46:48 · 165 阅读 · 0 评论 -
数组
数组两种构造方法 Var arr = []; [1,2,3] 里面写数组的 var arr = new Array(); new Array(10) 里面是数组长度。只能整数 溢出读写var arr = [];arr[10]; 结果为undefinedarr[10] = 123; 会将数组撑大到11位,[undefined x 10 , 123] length为...原创 2018-10-10 17:30:56 · 207 阅读 · 0 评论 -
封装浅层克隆 深层克隆
1、浅层克隆注意:这种浅层克隆只能正常修改原始值,修改引用值时会将原本的也修改。// 克隆var obj = { name : '张三', age : 12, sex : 'male', arr : [1,2,3,4]}var obj1 = {};// 自己写一个浅层克隆function clone(origin,target){ // 作一个兼容 如果有传ta...原创 2018-10-10 15:49:22 · 178 阅读 · 0 评论 -
ES5.0严格模式
1、启用es5 “use strict” 1.1 如果在script顶部写启动 use strict 整个js都会启动es5// 启动es5.0严格模式'use strict'// es5不支持arguments.callee、callerfunction test(){ console.log(arguments.callee);}test();...原创 2018-10-16 16:10:58 · 209 阅读 · 0 评论 -
封装去重方法、精确返回type值方法
由于typeof()方法返回类型不准确。数组对象跟null都返回object现自己封装一个type(),精确的返回类型typeof([])------>arraytypeof({})------>objecttypeof('你好')----->stringtypeof(function)---->functiontypeof(123)----->numb...原创 2018-10-15 11:41:04 · 276 阅读 · 0 评论 -
类数组
类数组:跟数组相似,无法使用数组的方法类数组必须有length属性 需要数组的方法可以自行添加1、如arguments实参列表是一个数组形式的数据。但无法使用数组的方法。如push。会报错2、一个对象,里面的键写作索引。加上length属性,与Array的原型方法,既可当数组使用。但本身是对象// 类数组function test() { console.log(argu...原创 2018-10-15 10:06:50 · 212 阅读 · 0 评论 -
继承
传统形式——原型链继承 prototype 借用构造函数 借用构造函数就是利用call() apply()借用别人的函数。虽然从视觉上省了代码量,但没new一个对象,都会调用多个构造函数。执行上复杂了但是在实际开发中,如果别人的函数是你所需要的,可以使用借用构造函数。3.共享原型 闭包私有性 封装圣杯模式 ...原创 2018-09-20 14:38:57 · 104 阅读 · 0 评论 -
命名空间、连续调用、属性访问、instanceof、区分数组与对象
命名空间 管理变量、防止污染全局,适用于模块化开发 模拟jq的连续调用 属性访问 obj.name-------->计算机会隐性转为obj['name']访问遍历对象hasOwnProperty() 自身的属性 A instanceof B 判断B的原型是否在A的原型链上 区分数组与对象 ...原创 2018-09-25 16:28:35 · 162 阅读 · 0 评论 -
call()跟apply() 改变this指向
call跟applay call();跟执行函数()是一样的效果 test.call()相当于test()call()跟apply()都是改变this的指向两者区别 传参列表不同Fun.call(新this指向,参数1,参数2,参数3,……)Fun.apply(新this指向,用对象形式传参)// 场景:当生产车间,需要用到别人的零件,// 可以用call或app...原创 2018-09-13 11:26:54 · 1185 阅读 · 1 评论 -
原型
构造函数:function Person(){} 对象化:var person = new Person(); 原型:Person.prototype 是一个空对象 是祖先 Person.prototype.age = 18; 给原型加一个属性 var person = new Person();person...原创 2018-09-06 16:49:03 · 129 阅读 · 0 评论 -
js基础——函数 + 递归
函数声明 function test(){} 命名函数表达式 var test = function fun(){} 后面的fun-这个名字没有意义。test.name就是后面的fun 匿名函数表达式——函数表达式(常用) var test = function(){} 函数——形参、实参 function test(a,b){}; a b 为形参...原创 2018-09-04 16:03:53 · 143 阅读 · 0 评论 -
经典面试题集合
1.考察闭包 (看似考察绑定事件addEventListener,实际考察闭包) 题目 给页面多个li绑定点击事件 并打印顺序//题目 给页面多个li绑定点击事件 并打印顺序var liArr = document.querySelectorAll('li');// console.log(liArr);// 法一,用[].forEach.call 无需用到闭包...原创 2018-08-17 16:43:50 · 510 阅读 · 0 评论 -
包装类
1、包装类引用值跟原始的区别:引用值可以有属性跟方法原始值不能有属性跟方法var str = 'abc';str.length; str的length为3.那么这个原始值类型的str为什么有属性length呢。这就是因为包装类str.length;事实上是隐性的执行了new String('abc').length这一句语法// 包装类// 简单的num...原创 2018-08-21 15:07:01 · 119 阅读 · 0 评论 -
js异步加载
js异步加载三个方法:1.defer 只有ie能用 在script里添加defer属性,可以将该js与html、css并行。 但要等到dom文档全部解析完才会执行 可以把js代码写到内部 <script src='xx.js' defer='defer'>2.async 加载完就执行,async只能加载外部脚本。不能把js写在scrip...原创 2018-12-17 16:10:10 · 194 阅读 · 0 评论