- 博客(43)
- 资源 (3)
- 收藏
- 关注
原创 小程序——地图
地图 首先要下载qqmap-wx-jssdk.min.js key去腾讯地图api里自己申请呀 在需要地图页面js中引入 // 引入SDK核心类 import QQMapWX from '../../utils/qqmap-wx-jssdk.min.js';// 实例化API核心类let qqMap = new QQMapWX({ key: 'C2FBZ-6YMKX-ML...
2019-03-28 10:42:59
635
原创 正则表达以及字符串的方法
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
300
原创 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
174
原创 冒泡、捕获、阻止默认事件
Ele.addEventListener(type,fn,false); false为冒泡 true为捕获在同一个ele上可以绑定相同type事件,可以一个为冒泡一个为捕获。会先执行捕获事件事件冒泡:从代码结构上(非视觉上)嵌套关系的元素,会存在冒泡功能。点击子元素,会从子元素依次往父元素,触发事件。事件捕获:代码结构上(非视觉上)嵌套关系的元素,会存在捕获功能。点...
2018-12-13 19:57:42
137
原创 VUE的组件使用
<body> <div class="box1"> <!-- 调用组件,直接用标签,组件名 --> <cp1></cp1> </div> <div class="box2"> <cp1></cp1&am
2018-11-23 15:50:15
87
原创 关于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
737
原创 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
156
原创 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
187
原创 封装去重方法、精确返回type值方法
由于typeof()方法返回类型不准确。数组对象跟null都返回object现自己封装一个type(),精确的返回类型typeof([])------>arraytypeof({})------>objecttypeof('你好')----->stringtypeof(function)---->functiontypeof(123)----->numb...
2018-10-15 11:41:04
266
原创 类数组
类数组:跟数组相似,无法使用数组的方法类数组必须有length属性 需要数组的方法可以自行添加1、如arguments实参列表是一个数组形式的数据。但无法使用数组的方法。如push。会报错2、一个对象,里面的键写作索引。加上length属性,与Array的原型方法,既可当数组使用。但本身是对象// 类数组function test() { console.log(argu...
2018-10-15 10:06:50
195
原创 数组
数组两种构造方法 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
195
原创 封装浅层克隆 深层克隆
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
168
原创 命名空间、连续调用、属性访问、instanceof、区分数组与对象
命名空间 管理变量、防止污染全局,适用于模块化开发 模拟jq的连续调用 属性访问 obj.name-------->计算机会隐性转为obj['name']访问遍历对象hasOwnProperty() 自身的属性 A instanceof B 判断B的原型是否在A的原型链上 区分数组与对象 ...
2018-09-25 16:28:35
154
原创 继承
传统形式——原型链继承 prototype 借用构造函数 借用构造函数就是利用call() apply()借用别人的函数。虽然从视觉上省了代码量,但没new一个对象,都会调用多个构造函数。执行上复杂了但是在实际开发中,如果别人的函数是你所需要的,可以使用借用构造函数。3.共享原型 闭包私有性 封装圣杯模式 ...
2018-09-20 14:38:57
96
原创 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
1175
1
原创 原型
构造函数:function Person(){} 对象化:var person = new Person(); 原型:Person.prototype 是一个空对象 是祖先 Person.prototype.age = 18; 给原型加一个属性 var person = new Person();person...
2018-09-06 16:49:03
118
原创 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
136
原创 包装类
1、包装类引用值跟原始的区别:引用值可以有属性跟方法原始值不能有属性跟方法var str = 'abc';str.length; str的length为3.那么这个原始值类型的str为什么有属性length呢。这就是因为包装类str.length;事实上是隐性的执行了new String('abc').length这一句语法// 包装类// 简单的num...
2018-08-21 15:07:01
105
原创 对象
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
133
原创 经典面试题集合
1.考察闭包 (看似考察绑定事件addEventListener,实际考察闭包) 题目 给页面多个li绑定点击事件 并打印顺序//题目 给页面多个li绑定点击事件 并打印顺序var liArr = document.querySelectorAll('li');// console.log(liArr);// 法一,用[].forEach.call 无需用到闭包...
2018-08-17 16:43:50
496
原创 将几组对象中有相同信息的放入同一个对象 且在同一个数组内
var TJKReportList = [{name:'张三',age:18},{name:'李四',age:18},{name:'王五',age:18}]; var pacsReportList = [{name:'张三',age:20},{name:'李四',age:20},{name:'王五',age:20}]; var pacsZipReportList = [{na...
2018-08-14 16:05:04
2174
原创 苹果手机iframe撑大父页解决办法
最近项目中需要在自己页面里引入第三方页面,除了iframe我也不知道还有什么可以引入。引入的页面是可以手触摸操作的,引入成功后安卓正常适应,可以手触摸操作,而苹果手机用手触摸放大时,iframe的宽也被放大了,变成了pc版。1.试过将iframe外层盒子写死,页面宽度写死,然而iframe还是会被撑开,页面被撑大。(失败)2.试过给iframe外层盒子overflow hidden ...
2018-08-14 15:07:42
3115
原创 用vue与bootstrap写简单用户信息添加删除操作
小记:1.v-model="" 用于input表单双向数据绑定 逻辑层跟渲染层双向绑定2.v-on:click='add()' click方法绑定 3.v-for='(item,index) in myData' 遍历数组 {{index}} {{item.name}} {{item.age}} 适用于vue版本2.0 4.v-fo...
2018-08-03 11:19:23
1018
原创 闭包、私有属性
当内部函数被保存到外部时,将会生成闭包。闭包会导致原油作用域链不释放,造成内存占用。// 练习题function test(){ var arr = [];//定义一个数组,里面放10个function for (var i = 0; i < 10; i++) { arr[i] = function(){ document.write(i+" "); } } r...
2018-07-26 18:38:19
339
原创 立即执行函数
// 立即执行函数function a(){ console.log('定义在全局中,执行完后不会销毁,会一直占内存');}// 如果是只执行一次的函数,那么久非常浪费内存。// 针对初始化功能的函数,执行完后立即销毁(释放)。如下:(function aaa(){ console.log(1);}())// 可以传参(function (a, b, c){ con...
2018-07-26 14:37:32
286
原创 作用域
// 作用域function a(){ function b(){ var bbb = 234; } var aaa = 123; b();}var glob = 100;a();//首先在定义a fun的时候,a有一个[[scope]]装作用域链,作用域链0位,创建一个全局GO//a defined a.[[scope]]------->0:GO {...
2018-07-25 16:11:45
102
原创 pdf在线预览 以及pdf转图片展示的问题
浏览器在线预览pdf引用pdfobject.js插件 但微信浏览器不支持pdf格式,下面用到pdf.js转图片展示资源可见:https://download.csdn.net/download/qq_39201210/10560790<!DOCTYPE html><html lang="en"><head> <meta cha...
2018-07-24 14:19:28
3317
1
原创 工厂方法模式
// 工厂方法模式// 案例:投放培训广告,有java用绿色字体、php用黄色字体红色背景// 工厂方法模式// 案例:投放培训广告,有java用绿色字体、php用黄色字体红色背景// 创建JAVA学科类var Java = function (content) { // 将内容保存在content里面以日后备用 this.content = content; // 创建对象...
2018-07-23 19:34:53
154
1
原创 form表单提交传参跳转页面,并在iframe中打开页面
<div class="report-url" id="report-url"> <form action="http://yxreports.zhiyunduan.cn/zhiyunduan/indexv2.asp" method="post" target="showZip"> <input type="hidden
2018-07-23 17:16:57
5298
原创 工厂模式
// 简单工厂模式 // 比如注册模块 登录模块可用该模式// 篮球基类var Basketball = function(){ this.intro = '篮球盛行于美国';}Basketball.prototype = { getMember:function(){ console.log('每个队伍需要5名队员'); }, getBallSize:function...
2018-07-23 15:57:21
112
原创 时间戳用aes加密转base64
需要引用CryptoJS.jsfunction jiami(){ //时间戳用aes加密转base64 然后replace("+", "%2B") var timeS = new Date().getTime();//获取时间戳 var key = CryptoJS.enc.Utf8.parse('1234567890123456'); var iv = ...
2018-07-23 14:46:55
1748
1
原创 多态
//多种调用方式————多态// 同一个方法多种调用方式,在js中可判断传入的参数,来实现多种调用方式// 如:定义一个add方法,// 不传参则返回10,传一个参数则返回10+参数,传两个参数则返回两个参数相加的结果function add(){ var arg = arguments,//获取参数 len = arg.length;//获取参数长度 switch(len){...
2018-07-23 14:04:01
115
原创 属性复制 单继承 多继承
1. jq里面的extend可以深复制,我这里写的extend只能浅复制,只能复制值类型的属性,引用类型不可复制// 单继承 对象属性复制(浅复制,只能复制值类型的属性,引用类型无法复制)// 修改克隆对象的属性 原对象的属性也会改变var extend = function(target,source){ // 遍历源对象中的属性 for(var property in sou...
2018-07-23 11:38:14
130
原创 继承
1.子类的原型对象---类式继承类式继承需要声明两个类,将第一个类的实例赋值给第二个类的原型// 声明父类function FatherClass(){ this.name = '父类';}// 为父类添加共有方法FatherClass.prototype.getName = function(){ return this.name;}// 声明子类function...
2018-07-18 17:31:52
115
原创 禁止iframe嵌套网页的alert弹出框
新做项目需要引用一个页面,然后页面里老是有弹出框报一些代码。百度查了很多禁止iframe的alert办法,最多的都是说用//禁止alert window.alert = function(){ alert('111'); }//禁止iframe的alertvar iframe = document.getElementById("Pcyear");...
2018-07-18 10:47:30
5563
3
原创 预编译
<script>Var a=123; //在全局范围定义的全局变量,为window所有 b = 234; //在全局范围,没有声明变量(没有var),也赋值给window,为全局 变量function aaa(){Var c = 456;//在局部声明的,为局部变量d = 789;//在局部没有声明的变量,为全局变量,为window所有Var e = f = 999; ...
2018-07-17 11:56:07
944
1
原创 面向对象编程
1. 面向对象编程就是将你的需求抽象成一个对象,然后针对这个对象分析其特征(属性)与动作(方法)。这个对象我们称之为类。面向对象----封装1、创建一个类 a. 首先声明一个函数保存在一个变量里 b. 按编程习惯一般这个代表类的变量首字母大写 c. 然后在这个函数(类)的内部通过对this(函数内部自带的一个变量,用于指向当前对象)添加属性或方法 例如:var Book =...
2018-07-17 11:45:48
120
原创 javascript--对象的形式、类new、函数原型prototype
1.用对象收编变量(函数) 这里myFun是对象无法newvar myFun = { fun1:function(){ console.log(1); }, fun2:function(){ console.log(2); } } myFun.fun1();//用点语法来使用函数2.用点语法创建函数 无法new复制方法var my...
2018-07-13 14:14:41
145
原创 小程序<swiper>轮播图组件自定义面板
思路:1.不开启面板指示点2.自定义面板样式,通过bindchange来改变点击状态及滑动jsPage({ data:{ slideList:[ { selected: true, css: 'background:#999' }, { selected: false, css: 'background...
2018-07-03 09:49:49
1747
转载 js封装Cookie操作 js 获取cookie js 设置cookie js 删除cookie
//简化cookie操作 getCookie setCookie//js封装Cookie操作 js 获取cookie js 设置cookie js 删除cookievar CookieUtil = { // 设置cookie set : function (name, value, expires, domain, path, secure) { ...
2018-06-14 11:30:08
295
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人