首页/文章/javascript

javascript

289 篇文章

javascript11-24
阅读

谈谈JS二进制:File、Blob、FileReader、ArrayBuffer、Base64

JavaScript 提供了一些 API 来处理文件或原始文件数据,例如:File、Blob、FileReader、ArrayBuffer、base64 等。下面就来看看它们都是如何使用的,它们之间又有何区别和联系。 1\. Blob Blob 全称为 binary large object ,即二进制大对象,它是 JavaScript 中的一个对象,表示原始的类似文件的数据。下面是 MDN 中对 Blob 的解释: Blob 对象表示...

#学习
javascript11-23
阅读

js函数表达式this指向问题

JS中的this指向问题() 1. ##### 在全局 中 ###### \= this window 2. ##### 在普通函数中 \= this取决于谁调用,谁调用我,this就指向谁,跟如何定义无关 3. ##### 箭头函数中的this 箭头函数没有自己的this,箭头函数的this就是上下文中定义的this,因为箭头函数没有自己的this所以不能用做构造函数。 4. ##### 事件绑定中的this 事件源.onclik =...

#学习
javascript11-23
阅读

普通函数、箭头函数、构造函数的区别及其对应 this 指向

最近学JavaScript的时候被普通函数、箭头函数、构造函数这三个函数搞晕了,这里写一下学习笔记记录一下,防止遗忘 \[笑哭\] 普通函数和构造函数的区别 1\. 创建变量和方法的方式不同 普通函数里创建变量和方法 构造函数里创建变量和方法 2\. 调用方式不同: 普通函数的调用 构造函数里函数的调用(先new出一个实例对象,再用 访问其属性/方法) 3\. 作用不同: 构造函数的作用是用来新建实例对象的(我的理解是构造函数偏向更像一...

#学习
javascript11-23
阅读

阻止用户离开页面,beforeunload和unload事件说明 - 掘金

定义 onbeforeunload事件在onunload事件之前触发。 调用方式 MDN官方示例: 或者在body标签上绑定onbeforeunload,但更推荐使用 的方式调用。 如果需要添加beforeunload点击确认后的处理代码,可以直接添加unload事件监听。 注意事项 使用方式 HTML规范建议作者使用 Event.preventDefault() 而非 Event.returnValue 的方式来提示用户。但是,该种方...

#学习
javascript10-17
阅读

大文件传输优化: 分片上传、断点续传和秒传的前后端实现

大文件上传 :一次性上传会存在的问题:比较慢,中途退出或者网络延迟,容易出现超时,上传失败等问题。所以一般会选择 分片上传、断点续传来实现。线上体验地址及演示在下面,源码在末尾。需要的小伙伴自取。 断点续传 断点续传是一种允许在上传中断后继续上传,而无需从头开始。 分片上传 分片上传是将大文件分割成多个小块(分片),然后逐个上传这些小块。小块可以并行上传,从而提高上传速度。一旦所有分片上传完成,服务器可以将这些分片合并成完整的文件。 秒...

#学习
javascript10-08
阅读

前端实现文件预览 - word、pdf、excel预览

PDF预览 PDF预览用的是pdfjs dist这个pdf.js构建库 安装 最好记住自己安装的版本,因为后面解析字体的时候可能会用到 使用 1. 项目中引用 因为我安装的版本是2.6.347,所以我这里用cdn引入需要的工作包版本是2.6.347,最好是引用本地的,因为有些内网没法访问cdn的话会造成异常。 2. 上传组件 这时候要简单的写一个上传组件,给组件加上id以及change事件方便测试使用效果 3. 添加一个渲染容器 此时需...

#学习
javascript06-18
阅读

什么是Promise,我们用它来做什么?

一、什么是 ?我们用Promise来解决什么问题? Promise 是异步编程的一种解决方案:从语法上讲,promise是一个对象,从它可以获取异步操作的消息;从本意上讲,它是承诺,承诺它过一段时间会给你一个结果。promise有三种状态: pending(等待态),fulfiled(成功态),rejected(失败态) ;状态一旦改变,就不会再变。创造promise实例后,它会立即执行。 我相信大家经常写这样的代码: 一般来说我们会碰...

#面试
javascript06-18
阅读

如何理解-JavaScript-中的sort排序

sort排序是针对数组中的元素进行升序排序。sort()使用分两种情况 无函数 有函数 无函数 如果sort()方法中无函数,则排序是在将数组中的元素转换为字符串,然后比较元素字符串UTF 16 代码单元值序列(元素按照转换为的字符串的各个字符的 Unicode 位点进行排序。) Output 注意,这里不是 按照 顺序排列是因为不是按照 排序而是按照元素的字符串形式排序。所以是按照 1,1,2,3,4的顺序,如果第一位相同则比较第二位...

#面试
javascript06-15
阅读

谈谈This指向

首先要说的是,this的指向在函数定义的时候是确定不了的,只有当函数执行的时候,才知道this到底指向谁,实际上this最终的指向是那个调用它的对象。 举个例子: 因为函数没有执行的时候,它的指向确实是不确定的,但箭头函数的this在定义的时候就已经确定了。 普通函数中的This 以上面的函数为例,普通函数的直接调用,例如fn的直接调用,就像下面的代码一样,和上面就一点点的区别就是直接调用了函数,这时候的this指向全局对象window...

#面试
1...262728...33