![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
js
笑魇轻轻
这个作者很懒,什么都没留下…
展开
-
el-select 选择器相关
有两个Select 选择器,前面一个下拉框选中的数据,是后面Select 选择器的总数据。 <el-select v-model="value1" multiple placeholder="请选择"> <el-option v-for="item in options" :key="item.id" :label="item.name" :value="item.id" &g原创 2020-12-09 21:45:33 · 458 阅读 · 0 评论 -
JS修改this的方法bind、apply、call的理解
call、apply、bind 都是用来修改函数中的this,传参时,call是一个个传参,apply是数组形式传参,call和apply立即执行并且返回值是你调用的方法的返回值,若该方法没有返回值,则返回undefined。bind是改变this后返回一个新的函数,他不会立即执行。如果bind返回的新函数需要执行,则在后面加()如下例子的第三四个。call、apply、bind 是Function.prototype下的方法,作用是执行一下目标函数,执行时顺便把目标函数中的this改一下,然后把结果原创 2020-05-12 16:30:44 · 112 阅读 · 0 评论 -
js闭包的理解
一.闭包的概念闭包是指有权访问另外一个函数作用域中的变量的函数.可以理解为(能够读取其他函数内部变量的函数)闭包的作用: 正常函数执行完毕后,里面声明的变量被垃圾回收处理掉,但是闭包可以让作用域里的 变量,在函数执行完之后依旧保持没有被垃圾回收处理掉。二.闭包的缺陷:闭包会导致内存占用过高,因为变量都没有释放内存。三.常见面试题for 循环中打印for (var i = 0; i < 4; i++) { setTimeout(function() { console.lo原创 2020-05-12 16:16:53 · 1494 阅读 · 0 评论 -
vue解决跨域问题的方法
方法1.后台更改headerheader('Access-Control-Allow-Origin:*');//允许所有来源访问 header('Access-Control-Allow-Method:POST,GET');//允许访问的方式 方法2.使用JQuery提供的jsonpmethods: { getData () { var self = this $.ajax({ url: 'http://f.apiplus.cn/bj11x5.json'原创 2020-05-12 15:26:28 · 286 阅读 · 0 评论 -
JS数组操作方法(包含ES6)
一、改变原数组的方法(9个):ES5:a.pop()/ a.shift()/ a.push()/ a.unshift()/ a.reverse()/ a.splice()/ a.sort()ES6:a.copyWithin() / a.fill对于这些能够改变原数组的方法,要注意避免在循环遍历中改变原数组的选项,比如: 改变数组的长度,导致遍历的长度出现问题。1.pop() 删除一个数...原创 2020-05-05 11:44:08 · 216 阅读 · 0 评论 -
ES6、7、8常用特性总结
ES6常用新特性1. let && const1.let 命令也用于变量声明,但是作用域为局部{ let a = 10; var b = 1; }在函数外部可以获取到b,获取不到a,因此例如for循环计数器就适合使用let。2.const用于声明一个常量,设定后值不会再改变const PI = 3.1415;PI // 3.1415...原创 2020-04-28 21:19:08 · 389 阅读 · 1 评论 -
ES6新特性整理
ES6包含了很多很棒的新特性,可以更加方便的实现很多复杂的操作,提升开发效率。它包括了箭头函数、变量声明:const和let、模板字符串、展开运算符、类、模块化、解构等。1.不一样的变量声明:const和letES6推荐使用let声明局部变量,相比之前的var(无论声明在何处,都会被视为声明在函数的最顶部)let和var声明的区别:var x = '全局变量';{ let x = ...原创 2020-04-28 21:10:56 · 138 阅读 · 0 评论 -
JS组数操作方法(包含ES6)
因为数组操作的方法有很多,我们在实际项目中又会经常使用,本篇文章一次性整理常用的数组操作方法 ( 包含 ES6 的 map、forEach、every、some、filter、find、from、of…等 ),熟悉了这些数组的操作方法,编起代码来也就会更加干净利落哟。Array数组的方法:Mutator方法————"突变方法"会改变数组自身的值; Accessor方法————"访问方法"不...原创 2020-04-28 20:37:41 · 388 阅读 · 0 评论 -
10个正则表达式技巧
1.匹配模式正则表达式查找与模式匹配的字符串部分在JavaScript中,它们是在正斜杠之间//或使用new RegExp()然后用于match , test或replace您可以预先定义正则表达式,也可以直接在调用方法时定义2.匹配多个一次匹配单个字符,或将多个字符放在方括号[]中以捕获任何匹配的字符使用连字号捕获一系列字符-3.可选标志在正则表达式的末尾添加可选标志,以...原创 2020-04-28 19:28:21 · 318 阅读 · 0 评论 -
JS字符串操作方法(包含ES6)
一、charAt()返回在指定位置的字符。var str="abc"console.log(str.charAt(0))//a二、charCodeAt()返回在指定的位置的字符的 Unicode 编码。var str="abc" console.log(str.charCodeAt(1))//98三、concat()连接字符串。 var a = "abc"; var ...原创 2020-04-28 10:48:57 · 479 阅读 · 0 评论 -
判断数据类型的方法有哪些,有什么区别
typeof 主要用于判断数据是不是基本数据类型,其对于Date、Array类型返回的都是"object",不够精准;instanceof 主要的目的是用来检测引用类型,返回布尔值,但必须要指定数据类型才能进行判断;Object.prototype.toString.call() 对象的一个原生原型扩展函数,能够精确的区分数据类型,是目前判断一个对象类型的最好的办法。...原创 2020-04-26 18:00:02 · 400 阅读 · 0 评论 -
JS判断对象是不是数组
1、通过instanceof判断instanceof运算符用于检验构造函数的prototype属性是否出现在对象的原型链中的任何位置,返回一个布尔值。let a = [];a instanceof Array; //truelet b = {};b instanceof Array; //false在上方代码中,instanceof运算符检测Array.prototype属性是否存在...原创 2020-04-26 16:28:41 · 175 阅读 · 1 评论 -
原生JS怎样增、删、查、替换Dom节点
(1)创建新节点createDocumentFragment() //创建一个DOM片段createElement() //创建一个具体的元素createTextNode() //创建一个文本节点(2)添加、移除、替换、插入、克隆appendChild()removeChild()replaceChild()insertBefore()cloneNode()(3)...原创 2020-04-23 11:50:31 · 490 阅读 · 0 评论 -
post和get的区别?
1、get是从服务器上获取数据,post是向服务器传送数据。2、get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。post是通过HTTPpost机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址。用户看不到这个过程。3、对于get方式,服务器端用Request.QueryStr...原创 2020-04-23 11:15:43 · 134 阅读 · 0 评论 -
JS实现继承的几种方式
1 、原型链继承将构造函数的原型设置为另一个构造函数的实例对象,这样就可以继承另一个原型对象的所有属性和方法,可以继续往上,最终形成原型链。第一个问题是,当实现继承后,另一个原型的实例属性,变成了现在这个原型的原型属性,然后该原型的引用类型属性会被所有的实例共享,这样继承原型引用类型属性的实例之间不再具有自己的独特性了。第二个问题是,在创建子类型的实例时,没有办法在不影响所有对象实例的情况下...原创 2020-04-23 11:08:07 · 85 阅读 · 0 评论 -
对原型链的简单理解
js里所有的对象都有proto属性(对象,函数),指向构造该对象的构造函数的原型。只有函数function才具有prototype属性。这个属性是一个指针,指向一个对象,这个对象的用途就是包含所有实例共享的属性和方法(我们把这个对象叫做原型对象)。原型对象也有一个属性,叫做constructor,这个属性包含了一个指针,指回原构造函数。三句话总结原型和原型链第一句话:prototype是函数...原创 2020-04-23 10:54:53 · 118 阅读 · 0 评论 -
简述ajax请求过程,以及注意事项
请求过程:// ajax 提交 post 请求的数据// 1. 创建核心对象var xhr = new XMLHttpRequest();// 2. 准备建立连接xhr.open("POST", "register.php", true);// 3. 发送请求// 如果要POST提交数据,则需要设置请求头xhr.setRequestHeader("Content-Type", "a...原创 2020-04-23 10:38:05 · 528 阅读 · 0 评论 -
如何使用.map()、.filter()和.reduce()函数
我们通常在对字符串或数组进行循环时,自己都会执行以下操作之一:将语句序列映射(map)到每个值,过滤(filter)满足特定条件的值,或者将数据集减少(reduce)到单个聚合值。map定义和方法map()方法返回一个新数组,数组中的元素为原始数组元素调用函数处理的后值。map()方法按照原始数组元素顺序依次处理元素。注意:map不会对空数组进行检测 。map不会改变原始数组 。函数...原创 2020-04-22 10:54:11 · 353 阅读 · 0 评论 -
浅谈ajax和axios、fetch的区别
ajax和axios、fetch的区别ajax 实现了 局部数据刷新本身是针对MVC的编程,多用于jquery项目,不符合现在前端MVVM的浪潮axios基于ajax封装为MVVM框架而生 (vue react)支持 Promise API支持并发请求fetchAJAX在ES6的替代品fetch不是ajax的进一步封装,而是原生js,没有使用XMLHttpRequest对象。...原创 2020-04-16 16:34:57 · 5152 阅读 · 0 评论 -
对ajax的优缺点的简单理解
优点:1.异步请求,不妨碍用户浏览页面或者其他操作。2.局部刷新,无需重新刷新页面。3.界面与应用分离。有利于分工合作、减少非技术人员对页面的修改造成的WEB应用程序错误、提高效率、也更加适用于现在的发布系统。4.基于标准被广泛支持。5.前端和后端负载平衡。最大程度的减少冗余请求和响应对服务器造成的负担,提升站点性能。缺点:1.back和History,对浏览器机制的破坏。2.安全...原创 2020-04-16 17:51:19 · 74 阅读 · 0 评论