![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
javascript
文章平均质量分 61
是梦梦啊
只要我够勤快,咸鱼总会翻身哒!
展开
-
【基础恶补】JavaScript数组的一些方法,reduce,filter,reverse,map等
方法返回一个新的数组对象,这一对象是一个由 begin 和 end 决定的原数组的浅拷贝(包括 begin,不包括end)。会按照一个可指定的深度递归遍历数组,并将所有元素与遍历到的子数组中的元素合并成一个新数组返回。map 方法创建一个新数组,这个新数组由原数组中的每个元素都调用一次提供的函数后的返回值组成。负整数从数组中的最后一个元素开始。push() 将一个或多个元素添加到数组的末尾,并返回该数组的新长度。:一个新的、通过测试的元素组成的数组,如果没有符合条件的,则返回一个空数组。原创 2022-12-02 19:08:47 · 2207 阅读 · 3 评论 -
charCodeAt() 方法了解和用法&unicode编码表
前言:最近在看一些算法题,发现有时候借用到charCodeAt方法,所以趁此机会来学习一下(●ˇ∀ˇ●)MDN的解释:W3C的解释:附链接:https://blog.csdn.net/fedawn/article/details/7307993原创 2022-06-24 18:19:06 · 5248 阅读 · 0 评论 -
【2022面试准备】变量类型检测
一、内存空间和类型内存空间分为: 栈内存和堆内存原始类型值被分配到栈内存中而引用类型被分配到堆内存中原始类型:string number boolean undefined null symbol bigInt引用类型:Object(包含object/function/array)二、如何判断类型:1、typeof :可以判断原始类型,但是引用类型判断不了,除函数外所有的引用类型都会被判定为object2、instanceof: 可以判断引用类型具体是什么类型3、Object.prototyp原创 2022-06-13 19:34:39 · 117 阅读 · 0 评论 -
【面试1】构造函数、原型、原型链、new
1、什么是构造函数?如果一个函数被设计出来,是用于通过new关键字创建对象的,它就是一个构造函数。如下:function Father(name,age){ this.name = name; this.age = age;}构造函数有如下特征:(1)、首字母大写(2)、构造函数应该使用new来调用(3)、构造函数调用后,会返回一个对象(4)、构造函数的返回值若返回的值是一个数字、字符串、布尔,直接忽略,就当看不见。若返回的值是一个对象,则使用返回的对象(5)、构造函数中的原创 2022-02-09 22:23:12 · 284 阅读 · 0 评论 -
javaScript的多种继承方式(8种)
这里写目录标题1、原型链继承2、 借用构造函数3、组合继承4、原型式继承5、寄生式继承6、寄生组合式继承7、混入方式继承多个对象8、ES6类继承extends1、原型链继承缺点: 多个实例对引用类型的操作会被篡改。2、 借用构造函数缺点:只能继承父类的实例属性和方法,不能继承原型属性/方法无法实现复用,每个子类都有父类实例函数的副本,影响性能3、组合继承缺点:在使用子类创建实例对象时,其原型中会存在两份相同的属性/方法4、原型式继承缺点: 原型链继承多个实例的引用类型属性指向相同,存原创 2021-08-23 19:58:04 · 319 阅读 · 0 评论 -
this指向,new关键字
一、this原则一般情况下谁调用他就指向谁,普通函数this:this永远指向 调用 包含 自己(this本身) 的 函数 对应的对象。1、 默认绑定非严格模式下 this 指向全局对象(浏览器下指向 Window,Node.js 环境是 Global ),严格模式下,this 绑定到 undefined ,严格模式不允许this指向全局对象。默认绑定的另一种情况在函数中以函数作为参数传递,例如setTimeOut和setInterval等,这些函数中传递的函数中的this指向,在非严格模式指向的原创 2021-08-23 18:01:05 · 260 阅读 · 0 评论 -
JavaScript 执行机制
JavaScript 执行机制前言因为JavaScript是一门单线程语言,所以我们可以得出结论:JavaScript是按照语句出现的顺序执行的。例子:setTimeout(function(){console.log(‘定时器开始啦’)});new Promise(function(resolve){console.log(‘马上执行for循环啦’);for(var i = 0; i < 10000; i++){i == 99 && resolve();}})原创 2021-05-10 10:01:10 · 113 阅读 · 0 评论 -
重绘和重排
重绘和重排?重排,又叫回流浏览器运行机制:–1、 构建DOM树 生成节点2、 构建渲染树 css3、 布局渲染树 确定渲染位置4、 绘制渲染树 开始渲染重绘: 一个元素外观的改变,会触发元素的重绘。如:color、background-color重排(回流、reflow):元素的规模尺寸、布局、隐藏等行为改变而需要重新构建,这就称为回流重排必定引发重绘重排触发条件:1、 页面元素初始化2、 元素位置改变3、 添加删除可见的DOM元素4、 元素尺寸的改变—— 大小、外边距,边框原创 2021-05-10 09:59:08 · 251 阅读 · 0 评论 -
cookie,localstorage、sessionStorage的区别
前端本地存储的方式有三种,分别是cookie,localstorage和sessionStorage,他们的区别如下:1、生命周期:cookie:可设置失效时间,没有设置的话,默认是关闭浏览器后失效localStorage:除非被手动清除,否则将会永久保存。sessionStorage: 仅在当前网页会话下有效,关闭页面或浏览器后就会被清除。2、存放数据大小:cookie:4KB左右localStorage和sessionStorage:可以保存5MB的信息。3、http请求:cooki原创 2021-03-25 16:56:58 · 588 阅读 · 0 评论 -
Array.prototype.slice.call()方法详解
摘自:http://blog.csdn.net/i10630226、https://www.jianshu.com/p/c5df0156b229在很多时候经常看到Array.prototype.slice.call()方法,比如Array.prototype.slice.call(arguments),下面讲一下其原理:1、基本讲解1.在JS里Array是一个类 slice是此类里的一个方法 ,那么使用此方法应该Array.prototype.slice这么去用slice从字面上的意思很容易理解就是原创 2021-03-23 15:45:22 · 381 阅读 · 0 评论 -
2021面试前期准备——JS基础(持续更新)
数据类型1、js的基础类型js数据类型: 8种Number、String、Boolean、Undefined、Null、Object、Symbol、BigInt(安全存储、操作大整数)js基础类型:5种String、Number、Boolean、Null、Undefinedjs引用类型:3种Array、function、Object 使用typeOf,结果都是object2、null、undefined、isNaN,NaNnull和undefined的区别null: typeof原创 2021-03-19 15:56:47 · 421 阅读 · 0 评论 -
正则匹配字符串前后不输入空格,中间可以有空格
/^\S.*\S$|(^\S{0,1}\S$)/原创 2021-02-19 16:24:20 · 3836 阅读 · 0 评论 -
JS数组扁平化处理方法总结
1、toStringconst arr = [1, 2, 3, [4, 5, [6, 7]]];const flatten = arr.toString().split(',');console.log(flatten);//["1", "2", "3", "4", "5", "6", "7"]优点:简单,方便,对原数据没有影响缺点:最好数组元素全是数字或字符,不会跳过空位2、joinconst arr = [1, 2, 3, [4, 5, [6, 7]]];const flatten原创 2020-12-21 15:10:45 · 213 阅读 · 0 评论 -
axios中使用finally
业务场景:提交某个表单时,为了防止重复提交,提交后按钮需要置灰,直到提交完成按钮才可点击。如果没有finally函数,则需要在then和catch里都写入恢复按钮的代码,但是有了finally函数,我们只需要把这段代码写入函数中即可,因为finally函数中的逻辑,请求完成之后无论是成功失败都会被执行使用方法:1、 npm i promise.prototype.finally –S2、 在main.js中引用,require("promise.prototype.finally").shim();原创 2020-11-10 15:07:21 · 12963 阅读 · 0 评论 -
header请求中referer的含义或者作用
什么是Referer?Referer 是 HTTP 请求header 的一部分,当浏览器(或者模拟浏览器行为)向web 服务器发送请求的时候,头信息里有包含 Referer 。比如我在www.sojson.com 里有一个www.baidu.com 链接,那么点击这个www.baidu.com ,它的header 信息里就有:Referer=https://www.sojson.com由此可以看出来吧。它就是表示一个来源。看下图的一个请求的 Referer 信息。这里有一个小问题要转载 2020-11-03 16:06:12 · 8746 阅读 · 0 评论 -
计算属性名 ES6
MDN解释:从ECMAScript 2015开始,对象初始化语法开始支持计算属性名。其允许在[]中放入表达式,计算结果可以当做属性名。这种用法和用方括号访问属性非常类似,也许你已经用来读取和设置属性了。现在同样的语法也可以用于对象字面值了:// Computed property names (ES6)var i = 0;var a = { ["foo" + ++i]: i, ["foo" + ++i]: i, ["foo" + ++i]: i};console.log(a.foo原创 2020-10-30 15:40:39 · 436 阅读 · 0 评论 -
fromCharCode() 方法
将 Unicode 编码转为一个字符:所有主要浏览器都支持 fromCharCode() 方法语法String.fromCharCode(n1, n2, …, nX)参数值n1, n2, …, nX 必需。一个或多个 Unicode 值,即要创建的字符串中的字符的 Unicode 编码。实例1:var n = String.fromCharCode(65);n 输出结果: A实例2:var n = String.fromCharCode(72,69,76,76,79);n 输出结果:原创 2020-09-14 12:01:28 · 2264 阅读 · 0 评论 -
js 判断一个 object 对象是否为空
toString()JSON.stringfly()原创 2020-07-27 15:57:55 · 143 阅读 · 0 评论 -
charCodeAt()和charAt()的使用及区别
charCodeAt() 方法可返回指定位置的字符的 Unicode 编码。这个返回值是 0 - 65535 之间的整数。语法:stringObject.charCodeAt(index)index 必需。表示字符串中某个位置的数字,即字符在字符串中的下标。ASCII码表:详情表见:百度ASCII表charAt() 方法可返回指定位置的字符。stringObject.charAt(index)index 必需。表示字符串中某个位置的数字,即字符在字符串中的下标。注释:字符串中第一个字符的下原创 2020-07-16 11:12:41 · 3871 阅读 · 0 评论 -
encodeURI()、encodeURIComponent()编码和decodeURI()、decodeURIComponent()解码
decodeURI() 解码某个编码的 URI。decodeURIComponent() 解码一个编码的 URI 组件。encodeURI() 把字符串编码为 URI。encodeURIComponent() 把字符串编码为 URI 组件。菜鸟教程解释:encodeURI() 函数可把字符串作为 URI 进行编码。对以下在 URI 中具有特殊含义的 ASCII 标点符号,encodeURI() 函数是不会进行转义的: , / ? : @ & = + $ # (可以使用 encodeURI原创 2020-06-04 17:57:37 · 521 阅读 · 0 评论 -
踩坑记录Referrer Policy: no-referrer-when-downgrade
emmm,百度翻译:降级时无推荐人,好吧,这是什么鬼最后总结下来,应该是跨域问题,解决方法:使用nginx, 前端代码打包把dist文件的东西放到…\nginx-1.16.1\html目录下…接口就能调通了不知道还有没有别的办法,因为这个是我临时接手的项目,暂时是这样做的…...原创 2020-06-04 17:33:02 · 7285 阅读 · 0 评论 -
js获取图片后缀名
let type = /.[^.]+$/.exec(name).toUpperCase();function getType(file){var index1=filename.lastIndexOf(".");var index2=file.length;var type=file.substring(index1,index2).toUpperCase();return type;}原创 2020-05-19 11:08:59 · 2786 阅读 · 0 评论 -
IE11通过Window Location href实现下载页面报400
今天遇到个问题,通过window.location.href实现下载,谷歌没问题,但是IE11不兼容,页面报400,如下图:原因:ie浏览器中跳转地址不能有中文字符解决办法:通过encodeURI转换下就好了问题解决,可以正常下载了...原创 2020-04-27 17:36:14 · 796 阅读 · 0 评论 -
学习笔记 Ajax与Comet
今日学习2小时:总结:Ajax 是无需刷新页面就能够从服务器取得数据的一种方法。1.ajax运作的核心对象是XMLHttpRequest(XHR)对象2.同源策略是对XHR的一个主要约束,它为通信设置了“相同的域,相同的端口,相同的协议”这一限制。3.解决跨域的方案称为CORS,又叫跨域源资源分享,ie8通过XDomainRequest对象支持CORS,其他浏览器通过XHR对象原生支持C...原创 2020-04-12 20:36:56 · 172 阅读 · 0 评论 -
vue踩坑 Error in mounted hook: "Sortable: `el` must be an HTMLElement, not [object Null]"
因为项目需要表格实现拖拽排序效果,最开始选用了sortable.js我的列表视图有两种方式,一种是表格方式的,一种是图示视图。我用的v-if来控制显示表格和视图的显示方式。一开始的时候,我默认显示的是表格形式,是没有这个报错的后来我把初始化的视图改成了图示的,就报了上图的错…感觉应该是v-if的原因,el-table这时候是没有加载的,但是我在mounted函数里调用了sortable...原创 2020-03-12 17:07:52 · 12715 阅读 · 2 评论 -
随记
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Ma...原创 2019-07-31 18:35:33 · 117 阅读 · 0 评论