Js中的宏任务&微任务/async & await/Promise & then
本文详细讲解了由以下原因导致的代码的执行顺序问题:
– 1、Js中的宏任务与微任务;
– 2、async & await;
– 3、Promise & then & catch & finally;
本文详细讲解了由以下原因导致的代码的执行顺序问题:
– 1、Js中的宏任务与微任务;
– 2、async & await;
– 3、Promise & then & catch & finally;
Promise、await、async到底怎么用?一篇文章帮你理清三者关系!
html内嵌图片音频视频,html单文件包含图片音频视频,html嵌入base64图片,html嵌入base64音频,html嵌入base64视频
闭包其实是一个函数的实例,该实例是一个存在于内存中的某个结构体。
也就是说闭包不是静态的代码,它是在函数运行时产生的一个函数及其运行时创建的环境的综合体。
jQuery $.ajax怎样发送header:使用headers或beforeSend
js报错Uncaught RangeError: Maximum call stack size exceeded解决方法
现在很多网站都有复制网页内容自动添加版权信息,俗称小尾巴,比如:知乎,简书,CSDN等。
客户端发出请求后服务器如果未查询到数据,不要立刻返回,而是用一个死循环一直循环查询需要获取的数据,每隔一秒查一次(sleep),直到查到有数据后返回,或者一直未查到数据但已超时也要返回。
一、使用JSONP跨域
二、使用代理方式跨域
三、使用CORS跨域
四、使用iframe+postMessage跨域
一、字符串方法使用正则
search / match / replace / split
二、正则表达式的方法使用正则
exec / test
三、创建正则表达式的方式与区别
1、字面量方式
2、创建实例方式
3、区别:创建实例方式可以使用变量,字面量方式无法使用变量
jQuery显示上传进度主要是靠监听`xhr.upload.onprogress`事件,测试的时候可以把浏览器network里的3G fast或3G slow的打开,就可以降低速度,模拟上传慢的情况!
1、canvas转换为dataURL (从canvas获取dataURL)
2、File对象转换为dataURL、Blob对象转换为dataURL
3、dataURL转换为Blob对象、dataURL转换为File对象
4、dataURL图片数据绘制到canvas
5、File,Blob的图片文件数据绘制到canvas
6、Canvas转换为Blob对象并使用Ajax发送
方法很简单,只要在函数上方输入`/**`然后敲回车,就可以出来,可以看到自动生成的注释参数的类型是没有的,这只能我们自己加上,这样在调用这个函数的时候,就会有注释出来,方便知道该传什么类型的值。
1、iframe上传(最古老的无刷新上传,在Ajax支持上传文件之前,就用的这种方式,兼容性是最强的,不过现在应该很少人用这种方式了
2、使用Flash上传(主要用来防止一些低版本浏览器,它们不支持Ajax上传文件,但因为以前看网页视频都需要Flashplayer,所以可以认为基本上所有浏览器都是安装了flash的,都是支持flash的)
3、Ajax模拟form表单上传方式
1)不处理照片直接上传文件
2)处理图片后再提交文件
3)提交DataUrl数据方式
代码如下,我希望的是用ajax做无刷新上传文件,上传完后自己用js控制要干什么(如弹出提示),所以要阻止表单自动跳转,但是却发现这个代码死活跳转不了,只记得以前一直都用return false来阻止jquery的submit事件自动跳转的