- 博客(9)
- 收藏
- 关注
原创 js中的new Map的用法
map数据结构是es6中新出的语法,其本质也是键值对,只是其键不局限于普通对象的字符串 1.创建map var mymap = new Map() // 创建空map var map2 = new Map([[1,2],[true,3]]) // 有初始参数的map 2. map的方法 map有has,get, delete,set,clear 五种方法,还有个size属性 set方法 map添加新键值 var mymap = new Map() mymap.set('name','童') has方
2021-11-19 17:13:42
8655
原创 call,apply,bind3者的用法和异同点
1 用法 如图,call,apply,bind三者都是用来改变函数内this的指向。第一个参数都为this的新指,第二个参数bind和call是作为函数实参按顺序传入,apply的第二个参数是一个实参组成的数组、 2 异同点 他们都可以用来改变函数的this的指向,但是从图中我们可以看到,bind和其它两个是有所不同的,bind仅仅是改变了this的指向,但是他不会立即执行这个函数,而call和apply会立刻执行。call和apply用法基本相同,只是他们的传参方式有点不一样,call是所有的参数直接一
2021-10-25 15:58:19
221
原创 bfc用法
bfc的含义和作用 1.含义 bfc是什么?bfc也叫块级格式化上下文,一个bfc包含了该区域内所有的子元素,但不包含其子元素的内部元素 2. 特点 bfc区域互不影响 3.什么条件称得上的bfc 1).body根元素 2).浮动元素 3).定位元素 4).行内快模式 5).设置overflow 以上满足一个就是bfc了 4.作用 1.解决塌陷问题(垂直塌陷,包含塌陷) 2.解决浮动影响(子元素浮动,父元素没设置高度时会变为0,父元素设置overflow后可解决浮动失去高度问题) 3.解决浮动元素覆盖标准流
2021-10-25 11:22:11
642
原创 vue中句内双三元表达式来实现对class的操纵
当isUsing属性为false时,class为use-again,isUsing为true时,走入第二个三元表达,这个item中,有isUsing这个属性class为green,否则为gray。
2020-08-05 09:52:48
699
原创 ios上时间转换为时间戳出现NAN
最近小程序遇到了一个bug,一个时间显示在安卓上正常,在ios会出现NAN的情况 仔细分析后发现这是因为ios对于时间格式为“YY-MM-DD 00:00:00”这种‘-’格式的不能转换为时间戳,我们需要将其转换为‘YY/MM/DD 00:00:00’这类‘/’格式的时间。以下是转换代码 var a = '2020-8-5 09:23:20' var b = a.replace(/-/g,'/')// 转换为'/'格式 console.log(b) console.log(Date.parse(b))//
2020-08-05 09:29:14
349
原创 let声明的变量在Window中找不到
今天在写一个demo的时候,直接定义了一个变量age,然后在函数里面用this.age来取的时候,发现取不到,打印结果为undefined,,然后打印了一下Window,发现果然没挂载到Window这个对象里。后来查阅资料发现: 在es5中,顶层对象的属性等价于全局变量 es6中,var,function声明的全局变量,仍然属于顶级对象的属性;使用let,const,class声明的全局变量不再属于顶层对象的属性,这意味着es6开始,全局变量和顶层对象的属性开始分离,脱钩。所以我们在window对象里也就找
2020-07-10 15:02:54
996
原创 new关键字的作用
创建一个空对象obj 该对象的原型指向构造函数的原型对象 传入参数,执行构造函数,将this指向obj 返回obj 手写new的执行过程 控制台结果 可以看到,结果相同
2020-07-09 16:51:39
1654
原创 在vue项目中实现input框输入最多两位小数(很有效)
我们经常有这样的要求,input框的输入最多让其最大输入两位小数,当时第一时间想到的就是正则,就去网上搜对应的正则表达式,但是很多并不有效,最后找到了一种很不错的。 代码附上,另外我这里用的是原声的input,所以输入的值为e.target.value,如果是element组件的input框的话就直接写e就可以了。正则附上:/^\d*(\.?\d{0,2})/g)[0] 希望对大家有用 ...
2020-07-03 15:54:06
5699
原创 详解小程序的蓝牙模块
刚刚结束了一个项目,其中用到了小程序的蓝牙模块,当时也是遇到了很多的问题,这里就说下其中遇到的一些问题和坑 1 流程 首先是开启蓝牙模块, uni.openBluetoothAdapter({ success(res) { console.log(res) } })这里可以在fail的时候提示用户开启蓝牙,在成功的回调里获取本机蓝牙适配器状态,uni.getBluetoothAdapterState({ success(res) { console.log(res) } })当返回的适配器可用时,就可以开始
2020-07-02 16:53:44
3561
3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅