js
文章平均质量分 51
czx3387170
这个作者很懒,什么都没留下…
展开
-
正则表达式匹配特殊字符
正则表达式匹配特殊字符转载 2023-07-18 13:32:00 · 9584 阅读 · 0 评论 -
复杂数组遍历组合
二维数组拼接方法,数组合并原创 2022-11-03 10:49:24 · 317 阅读 · 0 评论 -
axios 笔记
axios使用笔记原创 2022-10-31 15:52:02 · 84 阅读 · 0 评论 -
后端搜索条件
后端搜索条件原创 2022-10-21 15:18:11 · 287 阅读 · 0 评论 -
ES6解构赋值
解构赋值语法是一个Javascript表达式,这使得可以将数据从数组或对象提取到不同的变量中(这段话是mdn中关于解构赋值的定义,注意这里的定义,可以看出解构主要用在数组和对象上)。说白了就是解析等号两边的结构,然后把右边的对应赋值给左边。如果解构不成功,变量的值就等于undefined。一、基本使用语法注意:对象解构赋值的键名对应很重要,不然会找不到。因为对象是无序的,必须通过键名来识别。1、未先声明变量再进行对象解构赋值//对象的键名和键值一致时,可以只写一个变量名即可let {aa,转载 2021-12-03 11:29:35 · 117 阅读 · 0 评论 -
ES6 可选链 操作符
一、 ?.可选链操作符(?.)允许读取位于连接对象链深处的属性值,而不必明确验证链中的每个引用是否有效。let nestedProp = obj.first && obj.first.second;// 等价于let nestedProp = obj.first?.second;js会在尝试访问obj.first.second之前隐式的检查并确定obj.first既不是null也不是undefined。如果obj.first是null或者undefined,表达式将会短路计转载 2021-12-03 10:44:58 · 1132 阅读 · 0 评论 -
获取节点,并在节点上添加监听事件
当不能通过document.getElmentById()来获取元素节点的时候,怎么办呢?可以使用window. Event()function test(){cosnt ev=window.Event()const el=ev.targetel.addEventListener('click',(e)=>{e.stopPropagation(),true})}其中 addEventListener方法的第一个参数:触发方式,第二个参数:触发后执行的函数,第三个参数,true=.原创 2021-09-09 16:51:30 · 196 阅读 · 0 评论 -
闭包对防抖和节流的应用
一、谈谈对闭包的理解从概念上来讲,所谓的闭包指的是一个函数,一个什么样的函数呢?有权访问另一个函数作用域中的变量的函数。直观点来讲,JavaScript的闭包就是函数中嵌套函数。本质上来讲,是因为作用域而产生一种特殊的情况,从而导致函数内部的变量无法进行销毁。如果再去深究的话,会出现个作用域链,这里面比较难理解。也是闭包产生的根本原因。举个例子:function myMethod(){ var num=6; return function(){转载 2021-09-09 16:41:16 · 523 阅读 · 0 评论 -
js笔记:对象数组分类,遍历请求接口,深拷贝
数组遍历原创 2021-09-07 20:37:21 · 1246 阅读 · 0 评论 -
常用正则表达式
一、校验数字的表达式数字:^[0-9]*$n位的数字:^\d{n}$至少n位的数字:^\d{n,}$m-n位的数字:^\d{m,n}$零和非零开头的数字:^(0|[1-9][0-9]*)$非零开头的最多带两位小数的数字:^([1-9][0-9]*)+(\.[0-9]{1,2})?$带1-2位小数的正数或负数:^(\-)?\d+(\.\d{1,2})$正数、负数、和小数:^(\-|\+)?\d+(\.\d+)?$有两位小数的正实数:^[0-9]+(\.[0-9]{2})?$有1~3位小数的转载 2021-04-14 09:41:11 · 105 阅读 · 0 评论 -
常用js功能代码的封装
1、输入一个值,返回其数据类型function type(para) { return Object.prototype.toString.call(para)}2、数组去重function unique1(arr) { return [...new Set(arr)]}function unique2(arr) { var obj = {}; return arr.filter(ele => { if (!obj[ele]) {转载 2021-03-10 18:37:24 · 229 阅读 · 0 评论 -
return 和 return true 和return false的区别
return 是终止程序不继续往下执行return true 返回正确的处理结果。return false 是终止事件的默认行为,比如阻止冒泡,阻止提交表单return +表达式 语句结束函数执行,返回调用函数,而且把表达式的值作为函数的结果通常函数经过一系列的处理后需要给外部返回一个值,这个值就要用return 返回出去,也就是说return是向函数返回值,并终止函数的运行...原创 2020-08-18 17:29:48 · 6675 阅读 · 0 评论 -
es6 Set对象集合和Map对象集合
set对象允许存储任何类型的唯一值,无论是原始值或者是对象引用;1/数组去重 arr=[1,2,3,1,2,4]const obj=new Set(arr) 得到一个新的对象 {1,2,3,4}将对象转换为数组:[...obj] 或者[...new Set(arr)]2、也可以对字符串进行去重值得注意的是,NaN被Set认为是相同的,{}被认为是不同的const obj=new Set([{},{}]) // 结果 obj是{{},{}} obj.size是2const...原创 2020-08-18 15:36:08 · 507 阅读 · 0 评论 -
比较带多个对象的数组,是否有相同的属性对象,(带对象的数组去重)
1、两个带对象的数组中,筛选出不相等的对象this.dataSource 是原始的数据源,总数组this.selectedRows 是表格选择后带对象的数组constnewDataSource=this.dataSource.filter((item,index)=>{returnJSON.stringify(item).indexOf(JSON.stringify(this.selectedRows[index]))==-1 })2、带对象的数组去重...原创 2020-08-18 10:04:04 · 638 阅读 · 0 评论 -
js事件循环+promise
!!!!!!事件循环其实就是:执行栈,宿主环境,事件队列3个之间的配合!!!!!!!!执行栈:call stack 是所有函数执行的一个环境,只有执行栈里面空闲了,才去执行事件队列里面的事件。JS引擎永远执行的是执行栈的最顶部div.onclick=function(){.....}这个也是异步函数,只有等用户点击的时候,才去执行函数,这样的函数也叫异步函数,某些函数不会立即执行,需要等到某个时机到达后才会执行,这样的函数称为异步函数,比如事件处理函数异步函数的执行时机,会被宿主环原创 2020-06-30 10:06:58 · 1650 阅读 · 0 评论 -
es6的class 类
class Person 用关键词class就可以定义一个Person的原型对象,该关键字的出现使得其在对象写法上更加清晰,更像是一种面向对象的语言。如果将之前的代码改为ES6的写法就会是这个样子:class Person{ constructor(name,age){ this.name=name this.age=age }say(){ return "我的名字叫" + this.name+"今年"+this.age+"岁了" }}let a= ne转载 2020-06-02 15:39:55 · 300 阅读 · 0 评论 -
正则表达式如何取包含div的字符串
var str='<div class='div_ce' align='center>合 计</div>'str.resplace('/(<.*?>|\s+| )/igm','')结果是:合计原创 2020-05-27 15:58:50 · 772 阅读 · 0 评论 -
...扩展运算符,slice()/contat() 不同情况下实现深浅拷贝
如果数组和对象中再包含一层对象,...扩展运算符/slice()/contat()都是对对象部分实现浅拷贝,如果只有一层数组,或者一层对象则实现深拷贝原创 2020-05-18 19:03:52 · 292 阅读 · 0 评论 -
localStorage、sessionStorage
一、什么是localStorage、sessionStorage在HTML5中,新加入了一个localStorage特性,这个特性主要是用来作为本地存储来使用的,解决了cookie存储空间不足的问题(cookie中每条cookie的存储空间为4k),localStorage中一般浏览器支持的是5M大小,这个在不同的浏览器中localStorage会有所不同。在HTML5中,本地存储是一个w...原创 2020-04-29 17:06:34 · 108 阅读 · 0 评论 -
map和forEach两个方法的区别
语法都一样,都是对数组按照一定的条件进行遍历,区别:数组对象进行操作时,一般是生成一个新的数组,可以在map中限制生成新数组的条件,有返回值而foreach是原有的数组进行操作,没有返回值...原创 2020-04-29 15:31:18 · 285 阅读 · 0 评论 -
个人对promise理解
1、执行异步操作,首先应该先创建一个 new Promise()实例,它有一个函数做为参数,这个函数有两个参数:resolve,reject. 请求的url,method,data都在这个函数中执行。then()方法,它的作用是为 Promise 实例添加状态改变时的回调函数。then方法的第一个参数是resolved状态的回调函数,第二个参数(可选)是rejected状态的回调函数。...原创 2020-04-29 14:59:47 · 122 阅读 · 0 评论 -
boostript工作笔记
1、boostrapt table插件,表头与表题,resize时,不一致的解决办法$(window).resize(function(){$("#table").bootstrapTable('resetView');});2、选中表格某一行背景颜色变化onClickRow:function(row,$element){...原创 2020-04-20 12:20:29 · 121 阅读 · 0 评论 -
Bootstrap Table 学习笔记之表格事件(一)
具体代码实例见转载连接onAll所有的事件都会触发该事件,参数包括——name:事件名,args:事件的参数。点击行事件:onClickRow当用户点击某一行的时候触发,参数包括——row:点击行的数据,$element:tr 元素,field:点击列的 field 名称。onDblClickRow当用户双击某一行的时候触发,使用方法同上。点击列事件:onCli...转载 2020-04-17 12:47:09 · 618 阅读 · 0 评论 -
ajax接口访问错误时,可以从下面的参数知道是哪里出错
error:function(XMLHttpResponse,textStatus,errorThrown){console.log('XMLHttpResponse',XMLHttpResponse)console.log('textStatus',textStatus)...原创 2020-04-10 16:52:23 · 150 阅读 · 0 评论 -
pnotify消息提示插件
需要引用pnotify.custom.js和pnotify.custom.css两个文件实例1:基本用法 Var pn= new PNotify({ title: '成功', text: '新增成功!', type:'error', //错误提示 hide: true, //是否自动关闭 delay:1000 //延...原创 2020-04-10 15:34:09 · 385 阅读 · 0 评论 -
bootstrap table 简书
https://www.jianshu.com/p/b9d0f0935263原创 2020-04-02 15:54:27 · 161 阅读 · 0 评论 -
http与https协议的区别
HTTP:是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器端请求和应答的标准(TCP),用于从WWW服务器传输超文本到本地浏览器的传输协议,它可以使浏览器更加高效,使网络传输减少。HTTPS:是以安全为目标的HTTP通道,简单讲是HTTP的安全版,即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。HTTP协议传输的数据都是未加密的,也就是明文...原创 2020-04-02 14:18:31 · 158 阅读 · 0 评论 -
bootstrapTable:获取选中行的数据
必须要有checkbox:true和singleSelect:true,然后就可以通过var row=$("#mytab").bootstrapTable('getSelections');获取行数据了,使用时因为是单行选中所以需要row[0].列名方式取值. function edit(){ // 获取当前行 ...转载 2020-04-01 15:43:25 · 3442 阅读 · 0 评论 -
boostrap里的tab标签分类()
<ulclass="navnav-tabs"><liclass="active"><ahref="#name"data-toggle="tab">菜单1</a></li><li><ahref="#menu"data-toggle="tab">菜单2&l...原创 2020-03-23 09:41:02 · 236 阅读 · 0 评论 -
数组深拷贝的三种简洁方式
ES6方法采用扩展运算符,扩展运算符就是将数组扩展为逗号隔开的序列。这里区分一下深拷贝和浅拷贝,浅拷贝通过直接赋值的方式(arr2=arr1)来实现arr2数组的创建,实质上只是将arr2指向了数组数据[1,2,3,4,5]在堆内存中的保存地址。也就是说arr1、arr2保存的是同一个堆内存地址。因此改变一个数组,会引起另一个数组同步改变,因为本质上只有一个数组。深拷贝则是在堆内存另...转载 2020-02-21 14:10:14 · 7474 阅读 · 2 评论 -
深浅拷贝
如何区分深拷贝与浅拷贝,简单点来说,就是假设B复制了A,当修改A时,看B是否会发生变化,如果B也跟着变了,说明这是浅拷贝,拿人手短,如果B没变,那就是深拷贝,自食其力。普通类型:string/number/boolen/underfine/null 存放在栈内存中,可以分配内存空间,属性和值都存在栈中, 如果实行拷贝就是深拷贝引用类型:arry/object/function 存放在堆...原创 2020-02-21 11:48:54 · 135 阅读 · 1 评论 -
利用事件委托机制给未来元素添加事件
未来元素用jquery里面的on方法添加事件 on(“click”):事件委托机制意思是在body元素绑定click事件处理函数handler,如果这个handler是由它的后代元素P触发的,就执行:$(document.body).on("click","p", handler) 其中P也可以是未来元素,就是后台动态添加进去的元素,而不是一开始写在页面中的元素。事件委托机制就是,我们不...原创 2020-02-20 17:23:05 · 384 阅读 · 0 评论 -
DOM0,DOM2,DOM3事件,事件基础知识入门
DOM0,DOM2,DOM3事件,事件基础知识入门 事件是javascript和HTML交互基础, 任何文档或者浏览器窗口发生的交互, 都要通过绑定事件进行交互; 事件有DOM0, DOM2和DOM3的区分(别问我怎么少了一个DOM1, 也没找到DOM1的信息啊,); DOM0就是直接通过 onclick写在html里面的事件, 比如:运行下面代码<input on...转载 2018-12-11 15:52:32 · 191 阅读 · 0 评论 -
形参问题
1.实参数大于形参数: function say(name,message){ console.log('Hello' + name + message); } say('World!','ByeBye!','World’);//控制台打印出:HelloWorld!ByeBye!2.实参数小于形参数:function say(name,messag...转载 2018-11-09 14:19:28 · 164 阅读 · 0 评论 -
JavaScript之如何让数字千位分割,即每三位一个逗号间隔 (第二种方法简单)
复杂算法:<script type="text/javascript"> function format_number(n){ var b=parseInt(n).toString(); var len=b.length; if(len<=3){return b;} var r=len%3; return r>0?b.slice(0,r)...转载 2018-09-29 16:47:41 · 2796 阅读 · 1 评论 -
JS-对一串数字每三位加上逗号
JS-对一串数字每三位加上逗号function addCommas(num){ var string=num+'';//将数字转换成字符串形式 var arr=string.split('.');//分割逗号; var num1=arr[0]; var num2=arr[1]?'.'+arr[1]:'.00';//若有小数则添加逗号,若没有则设置为成两位小数; v...转载 2018-09-29 16:25:04 · 1148 阅读 · 0 评论 -
loading效果实现的几个场景
简单loading效果的实现loading直译就是正在加载中的意思,也就是在页面加载的时候loading效果要出现,页面加载完成的时候让其消失。那么以什么来判断页面加载完成为节点去取消loading效果很重要,DOM元素加载完成,还是页面中的所有关联文件(包括图片),jquery给出了两个函数来判断这两个节点,$(document).ready()是在页面上所有DOM元素加载完毕后才执行$(w...转载 2018-07-30 11:00:35 · 2381 阅读 · 0 评论