js 基础
yuange11111
不积跬步无以至千里
展开
-
采用 canvas.toBlob 导出图片
采用 canvas.toBlob 导出图片前言一直以来,从工作以后接触都是与前端数据可视化相关的工作,所以对于 canvas 可谓是很熟悉了,这个标签要是从 w3c 的规范中抽离出去,可能我就自动失业了。闲言碎语不多说,开始回到正题。用 canvas 很多,难免要碰到将 canvas 绘制好的东西,导出成图片的需求。之前每次有将 canvas 导出图片的需求的时候,一般都是习惯性的采用 HTMLCanvasElement.toDataURL() - Web APIs | MDN 方法。最原创 2022-05-15 16:14:15 · 6740 阅读 · 3 评论 -
安卓和ios 软键盘弹起和收起
1 目前来说,js 应该是没有直接获取手机键盘状态的api,但是可以通过一些其他的特点来判断当前的键盘弹起和收起2 安卓键盘弹起会触发页面的resize 事件(苹果不会),所以可以通过判断页面高度的前后变化来判断键盘的状态。3 ios 在键盘收起的时候input 会失去焦点(安卓不会),所以可以通过input 的focus 和 blur 事件来判断键盘的状态 或者通过页面的foucein 和 focusout 来判断键盘的状态(有时候键盘收起并不会触发focusout 事件,需要滚动一点点之后.原创 2020-10-26 15:20:49 · 1314 阅读 · 0 评论 -
如何在外部js 文件中使用vue this关键字。
1 this 关键字是什么?this 指向了当前对象,当前对象里面有一些方法和属性可以给我们使用。我们使用this 关键字的目的是使用当前对象下的方法和属性,当我们在vue 文件里面使用 this 的时候这个this 就是 export default{ }中的这个 { },这个{ } 里面有很多的方法和属性可以给我们使用。所以如果我么想要在外部文件里面使用某个vue 组件的属性和方法可以直接import 这个 vue 组件就可以了,import 进来的组件就是我们...原创 2020-05-31 22:29:43 · 6870 阅读 · 0 评论 -
js 原型链和面型对象编程
1 每一个对象都有 -proto- 属性2 每一个函数也是对象,是特殊的对象,所以也有-proto- 属性3 函数比普通的对象多出一个 prototype 属性4 prototype 属性也是一个对象,所以也有 -proto- 属性 同时还有constructor 属性。这个属性的值是包含他的那个函数 大概是这样function (){ prototype:{ -proto-:function1, constructor:funct...原创 2020-05-31 21:39:36 · 142 阅读 · 0 评论 -
js 获取当前的时间
//获取到的时间比中国时间少了8个小时let date=new Date();date=date.toLocaleString(); //12小时制date=date.toLocaleString('chinese', { hour12: false }); //24小时制原创 2020-05-14 22:20:15 · 284 阅读 · 0 评论 -
js 实现深深的拷贝
问题:// 如果是基本数据类型let a = 1;let b = a;a = 2;console.log(a); // 2console.log(b); // 1// 如果是引用类型let array = [1,3,2];let array1 = array;array = [1]console.log(array); //[1]console.log(arr...原创 2020-05-04 11:59:38 · 110 阅读 · 0 评论 -
前端延迟搜索优化方案
input(e){ // 如果1s 之内有input 事件,那么上一个输入事件会被取消 // 每一次的输入事件都会被延迟1s 执行,然后如果没有输入事件了就会继续执行, // 如果有了新的输入事件,那么之前的输入事件就被取消掉 clearTimeout(this.data.flag); let fl...原创 2020-04-30 10:37:48 · 571 阅读 · 0 评论 -
js进入和退出全屏的方法
function inFullScreen(element) { var ele = element; if (ele.requestFullscreen) { ele.requestFullscreen(); } else if (ele.mozRequestFullScreen) { ele.mozRequestFullScreen(...原创 2020-04-26 18:37:21 · 225 阅读 · 0 评论 -
js 数组常用方法
常见方法,一看就会用的,就不代码去实现操作了,复杂的就demo一下。1. join()功能:将数组中所有元素都转化为字符串并连接在一起。2. reverse()功能:将数组中的元素颠倒顺序。3. concat()功能:数组拼接的功能 ,返回新数组,原数组不受影响。4. slice()截取数组生成新数组,原数组不受影响。返回的数组包含第一个参数指定的位置和所有到但不...原创 2020-04-17 17:24:18 · 1643 阅读 · 0 评论 -
js 获取今天的时间昨天的时间,明天的时间
//昨天的时间var day1 = new Date();day1.setTime(day1.getTime()-24*60*60*1000);var s1 = day1.getFullYear()+"-" + (day1.getMonth()+1) + "-" + day1.getDate();//今天的时间var day2 = new Date();day2.setTime(day...原创 2020-04-10 15:09:22 · 366 阅读 · 0 评论 -
JS操作String对象的方法
JS操作String对象的方法charAt(index):返回指定索引处的字符串charCodeAt(index):返回指定索引处的字符的Unicode的值concat(str1,str2,...):连接多个字符串,返回连接后的字符串的副本fromCharCode():将Unicode值转换成实际的字符串indexOf(str):返回str在父串中第一次出现的位置,若没有则返回-1l...原创 2020-04-03 15:37:37 · 136 阅读 · 0 评论 -
搞清clientHeight、offsetHeight、scrollHeight、offsetTop、scrollTop
网页可见区域高:document.body.clientHeight网页正文全文高:document.body.scrollHeight网页可见区域高(包括边线的高):document.body.offsetHeight网页被卷去的高:document.body.scrollTop屏幕分辨率高:window.screen.height每个HTML元素都具有clientHeig...原创 2020-02-21 14:54:25 · 127 阅读 · 0 评论