js
qq_46472106
这个作者很懒,什么都没留下…
展开
-
删除字符串末尾的0
a.replace(/(0+)$/g,"")原创 2022-03-08 12:14:22 · 1098 阅读 · 1 评论 -
将对象转化为字符串,并且将对象中的key去掉引号
一,对象的value中没有地址,没有: export function rmMarks(code) { var codeArray = code.split('\n'); codeArray = codeArray.map(i => { if (i.indexOf(':') != -1) { let prefix = i.split(':')[0]; let suffix = i.split(':')[1]; prefix原创 2022-03-08 12:13:14 · 481 阅读 · 0 评论 -
antd 级联选择 Cascader
因为一般接口返回的值都叫name和code,但是antd的级联选择中指定了属性名叫 label和value,所以我们需要改变参数名,将接口的返回值传入下面函数function convertKey(arr){ let tempString = JSON.stringify(arr); let jsonObject = {name:"label",code:"value"} for(var key in jsonObject ){ var reg = `/"${key}":/原创 2022-03-08 12:05:46 · 1765 阅读 · 1 评论 -
无法判断数组是否为空 select下拉框进行map时
<Select> (videoListArr || []).map(item=>{ <option value={item.id}>{item.name}</option> })</Select>原创 2022-03-08 11:56:42 · 157 阅读 · 0 评论 -
动态更改input的值
动态更改input值原创 2022-03-08 11:42:19 · 985 阅读 · 0 评论 -
取消滚动条 js
js取消给滚动条原创 2022-03-08 11:33:55 · 1375 阅读 · 0 评论 -
antd 全局设置为中文 在umi.rc文件中
antd设置全局中文原创 2022-03-08 11:29:23 · 1458 阅读 · 0 评论 -
antd让form表单右对齐
form表单对齐原创 2022-03-08 11:13:50 · 3642 阅读 · 0 评论 -
antd 表单设置默认值
const [form] = Form.useForm(); const fetchEdit = async () => { try { const res = await getStationEdit({ id: props.location.query.id }); console.log(res, '22'); form.setFieldsValue({ companyName: res.companyNa原创 2021-08-11 10:35:46 · 815 阅读 · 0 评论 -
数组去重
一、for循环嵌套,利用splice去重function newArr(arr){ for(var i=0;i<arr.length;i++){ for(var j=i+1;j<arr.length;j++){ if(arr[i]==arr[j]){ //如果第一个等于第二个,splice方法删除第二个 arr.splice(j,1); j--; }原创 2020-10-21 11:45:59 · 115 阅读 · 0 评论 -
冒泡排序法
假设数组中有n个数,则需要n轮,而每一轮中比较的次数都要减去已经确定的数值,即第i轮需要比较的次数为:n-i,可以用一个嵌套for循环来实现。for(var i=0;i<arr.length-1;i++){//确定轮数 for(var j=0;j<arr.length-i-1;j++){//确定每次比较的次数 if(arr[j]>arr[j+1]){ //降序 如果升序就< tem = arr[j]; arr[j] = arr[j+1];原创 2020-10-19 18:04:03 · 70 阅读 · 0 评论 -
数组和对象进行深拷贝
数组深拷贝方法一:var arr = ["a","b"];var arrCopy=[];for(var item in arr){arrCopy[item] = arr[item];} arrCopy[1]="c";console.log(arr) // => ["a","b"]console.log(arrCopy) // ["a","c"]方法二:var _test = [1,2,3];//原数组var _testCopy = [].concat(_test);原创 2020-10-13 16:29:31 · 153 阅读 · 0 评论 -
浮动定位与绝对定位脱离默认文档流的区别
浮动脱离文档流代码:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title></head><style> *{ margin:0; padding:0; list-style: none; } .wrap{ height: 200px; width: 200px原创 2020-10-08 17:11:53 · 162 阅读 · 0 评论 -
Post请求和Get请求的区别
一、区别1.get在浏览器回退时是无害的,post会再次提交请求;2.get产生的url地址可以被bookmark(加入标签),post不可以;3.get请求只能进行url编码,post可以进行多种编码;4.get请求参数会被完整保留在浏览器历史记录中,post不会(无痕浏览);5. 对参数的数据类型,get只接受ASCII字符,post没有限制;6.Get请求在url中传递的参数长度有限制,post没有;7.Get比post更不安全,因为参数直接暴露在url中,不能用来传递敏感信息;8.G原创 2020-10-02 11:23:17 · 174 阅读 · 0 评论 -
类数组转数组的几种方式
方式一:Array.prototype.slice.call(类数组)方式二:(es6中使用)Array.from(类数组)方式三:(要转为数组的必须具有iterator接口)扩展运算符不能将json格式的类数组对象转化成数组[...具有iterator的]...原创 2020-10-02 11:07:43 · 178 阅读 · 0 评论 -
jquery中如何控制表单元素的默认值
一、通过jquey控制单选框或多选框html代码:<input class="form-check-input " type="radio" name="inlineRadioOptions" id="inlineRadio1" value="option1"><label class="form-check-label" for="inlineRadio1">男</label><input class="form-check-input " type="原创 2020-10-01 17:56:33 · 444 阅读 · 0 评论 -
几种异步函数的请求方式 | generater、async、promise
文章目录generater函数async函数promise函数generater函数一、特点1.generator不是函数(yield只能写在generater中)g()不会立即执行,而是一上来就暂停,并返回一个Iterator对象(返回值为iterator,g1是iterator)每次g1.next()都会打破暂停状态去执行,直到遇到下一个yield或者return遇到yield时,会执行yeild后面的表达式,并返回执行之后的值,然后再次进入暂停状态,此时done: fals原创 2020-09-21 09:44:22 · 643 阅读 · 0 评论 -
Iterator
文章目录介绍作用next()方法添加迭代器for-of循环介绍遍历器是一种接口,为不同的数据类型提供统一的访问机制,不管什么数据类型只要部署了Iterator接口(才可以使用for of),都可以完成遍历操作。作用为各种数据结构,提供统一的访问接口使得各种数据结构成员能够按照某种次序排列Iterator接口可以用于for-of循环next()方法在遍历器对象Iterator中,有一个next方法,该方法会返回一个对象,对象中由两个属性value、done(当前数据是否遍历完) l原创 2020-09-19 09:54:58 · 167 阅读 · 0 评论 -
es6中Set和Map的练习题
文章目录将Set集合转换为数组使用Set方法实现数组的去重Map集合转换为数组对象转换为Map集合实现数组和合并并去重将Set集合转换为数组法一:let set = new Set([1,2,3,4])let res = Array.from(set)console.log(res)法二: let set = new Set([1,2,3,4])let res = [] set.forEach(item => { res.push(item) })console.原创 2020-09-18 15:17:45 · 606 阅读 · 0 评论 -
es6中的箭头函数
文章目录基础语法案例一案例二案例三基础语法function() {} 相当于 ()=>{} let fun1 = function(item){ return item;}相当于let fun2 = item => item;箭头函数可以根据参数个数来省略(),可以根据函数体内部代码的行数来省略{}一个参数时,可以省略()item => {} (右侧使用大括号时,需要手动设置ruturn,如果右侧没有大括号则是return的值原创 2020-09-18 09:45:37 · 256 阅读 · 0 评论 -
es6中的解构
文章目录概念数组解构对象解构字符串解构数值和布尔解构概念解构的本质属于"模式匹配",只要等号两边的模式相同,右边的值就会被赋予左边的变量。es6按照一定的模式,从数组和对象中提取值,对等号左边的变量进行赋值,叫做解构。如果解构不成功,变量的值等于undefined数组解构一、数组解构等号两边模式按照顺序依次匹配1、等号左边的模式等于右边let [a,b,c] = [1,2,[3,4]]console.log(a,b,c) // 1 2 [ 3, 4 ]或者let [a,b,[c]]原创 2020-09-18 09:44:41 · 196 阅读 · 0 评论 -
es5和es6中继承的差别
es5 function Person1(name) { this.name = name } Person1.prototype.pay = function() { console.log("my name is "+this.name) } let per1 = new Person1('tom') // 子构造函数原型指向父构造函数的实例 (要先写,如果先声明per2实例则per2没有继承父类的方法) Pers原创 2020-09-14 18:48:43 · 130 阅读 · 0 评论 -
js中的继承
继承实例对象可以调用其构造函数原型中的方法以及其构造函数父函数原型中的方法…var arr = [1,2,3];arr -> Array.prototype -> Object.prototypeAnimal DogDog继承Animaldog -> Dog.prototype -> Animale.prototype借用构造函数function Aniaml(name,age){ this.name = name; this.age = age;}原创 2020-09-14 18:48:09 · 55 阅读 · 0 评论 -
jQuery
jquery的特点轻量级: 大小较小(angularjs)强大的选择器: document.getElementById() $("#one") 和css类似,比css更加丰富出色的dom封装和可靠的事件处理机制: jquery对象-》jquery方法不污染顶级变量: 浏览器:window:{} linux:global:{}完善的ajax:链式操作方式: Array.prototype.slice.call(lis)原创 2020-09-12 15:46:25 · 84 阅读 · 0 评论 -
bom浏览器对象模型
文章目录介绍超时调用和间歇调用系统对话框介绍BOM提供了很多对象,用于访问浏览器的功能,这些功能与任何网页内容无关。BOM的核心对象是window,它表示浏览器的一个实例,在浏览器中window对象有双重角色既是通过javascript访问浏览器窗口的一个接口,又是ECMAScript规定的Global对象。超时调用和间歇调用一、用途:javascript是单线程语言,但是可以通过超时值和间歇时间来调度代码在特定时刻执行二、超时调用setTimeout();该方法返回一个数值ID,表示超时调用原创 2020-09-12 15:33:03 · 137 阅读 · 0 评论 -
事件代理
文章目录基本概念引入原因优点基本概念事件代理(Event Delegation),又称之为事件委托。是JavaScript中常用绑定事件的常用技巧。顾名思义,“事件代理”即是把原本需要绑定在子元素的响应事件(click、keydown…)委托给父元素,让父元素担当事件监听的职务。事件代理的原理是DOM元素的事件冒泡。引入原因<ul id="myList"> <li id="item1">list item 1</li> <li id="item2">原创 2020-09-12 15:05:22 · 123 阅读 · 0 评论 -
dom文档对象模型
文章目录定义节点类型定义DOM是针对HTML和XML文档的一个API(应用程序编程接口),DOM描绘了一个层次化的节点树,允许开发人员添加,移除,修改页面的某一部分。DOM可以将任何HTML或XML文档描绘成一个由多层节点构成的结构。节点分为几种不同的类型,每种类型分别表示文档中不同的信息或标记。每个节点拥有各自的特点,数据和方法,另外也有与其他节点存在某种关系。节点之间的关系构成了层次,所有页面标记则表现为一个以特定节点为根节点的树形结构。节点类型一、Node类型1.定义javascript中原创 2020-09-12 14:54:20 · 90 阅读 · 0 评论 -
对于闭包的个人理解
文章目录闭包的定义闭包的特点闭包的好处闭包的定义如果在一个内部函数里,对在外部作用域(但不是全局作用域)的变量进行引用,那么内部函数就被认为是闭包。闭包就是能够读取其他函数内部变量的函数。简单的来说就是函数内部的函数就是闭包闭包的特点可以读取自身函数外部的变量(沿着作用域链寻找)先从自身开始查找,如果自身没有才会继续往上级查找,自身如果拥有将直接调用。(哪个离的最近就用哪一个)延长内部变量的生命周期闭包的好处希望一个变量长期驻扎在内存当中(不被垃圾回收机制回收)避免全局变量的污染私有原创 2020-09-12 14:04:32 · 212 阅读 · 0 评论 -
js中的流程控制语句
控制流程语句一、分支语句1.if①if(boolean){ true: } else{ false }② if (boolean){ true: } else if(boolean){ true: } else{ false: }2.switch原创 2020-09-12 13:54:36 · 98 阅读 · 0 评论 -
js的特点
特点1.脚本语言:本身具有逻辑能力和行为能力console.log(1+1); //22.解析性语言①repl环境r:read 可读e:evel 解析p:print 打印l: loop 循环3.弱类型语言 a="hello"java是强类型语言int a=10;a="hello" //这样会报错4.从上到下顺序执行(按照解析顺序执行)解析:优先解析函数的声明(但不执行函数内部代码,只有调用的时候才执行),在解析使用var声明的变量(在没执行到到var时,不原创 2020-09-12 11:47:00 · 326 阅读 · 0 评论 -
js中的局部变量和全局变量
文章目录局部变量和全局变量局部变量和全局变量1.作用域:当前变量能够活动的区域2.只要使用var操作符,并且声明在函数内部的变量,即为局部变量,其他声明均为全局变量.fuction say(){b=20}//b为全局变量3.局部变量就是只能在{}内访问的变量...原创 2020-09-12 11:45:27 · 116 阅读 · 0 评论 -
js中值传递和引用数据传递
文章目录值传递(深拷贝)引用数据传递(浅拷贝)值传递(深拷贝)1.特点基本数据类型在进行值传递时,只是复制了一份属性值进行操作;(不会影响原值)2.测试var a=10;b=a;b=b+1;console.log(a);//10console.log(b);//11引用数据传递(浅拷贝)1.特点引用数据类型在进行值传递时,传递的是引用地址;(引用地址改变了,只要用的是一个引用地址,一个变都变)2.测试var o1={ name:'lisi', age:20原创 2020-09-12 11:42:00 · 101 阅读 · 0 评论 -
es5与es6中变量声明方式的区别
文章目录js中变量的声明方式es6中变量声明方式js中变量的声明方式一、var声明变量1.var a; //声明a变量,但不赋值2.var a=10; //声明并赋值3.a=10;//声明的同时赋值4.var a=10,b=20,c=30; //同时声明并赋值多个变量5.var a;//声明 a=10;//赋值 二、执行顺序b=20;//1.20//2.var b;//3.20->bes6中变量声明方式一、let声明变量1.特点使用let声明的变量,只在当前原创 2020-09-12 11:31:44 · 987 阅读 · 0 评论 -
Ajax的底层原理和jquery中的ajax
一、定义Ajax是Asynchronous JavaScript and XML,异步的JavaScript和XML.Ajax描述了一种主要使用脚本操作HTTP的Web应用架构,Ajax应用的主要特点是使用脚本操纵HTTP和Web服务器进行数据交换,不会导致页面重载。二、XMLHttpResquest//实例化var request=new XMLHttpRequest();//指定请求request.open("Get/Post",url);//设置请求头request.setReques原创 2020-08-31 19:27:06 · 517 阅读 · 0 评论 -
js中的对象和函数
控制流程语句一、分支语句1.if①if(boolean){ true: } else{ false }② if (boolean){ true: } else if(boolean){ true: } else{ false: }2.switch原创 2020-08-22 19:16:49 · 175 阅读 · 0 评论 -
js中的操作符和数据类型转换
值传递和引用数据传递一、基本数据类型在进行值传递时,只是赋值了一份属性值进行操作;(不会影响原值)var a=10;a=b;console.log(b); //报错 因为赋值是从右到左,b没有声明二、引用数据类型在进行值传递时,传递的是引用地址;(引用地址就是堆,只要是一个引用地址,只要一个改变所有的都改变)var o1{ name:"lisa", age:20 } var o2=o1; o2.name="tom"; console.log(o1); //t原创 2020-08-22 16:56:59 · 243 阅读 · 0 评论 -
js中的基础语法和数据类型
javascript特点1.脚本语言:本身具有逻辑能力和行为能力console.log(1+1); //22.解析性语言①repl环境r:read 可读e:evel 解析p:print 打印l: loop 循环3.弱类型语言 a="hello"java是强类型语言int a=10;a="hello" //这样会报错4.从上到下顺序执行(按照解析顺序执行)解析:优先解析函数的声明(但不执行函数内部代码,只有调用的时候才执行),在解析使用var声明的变量(在原创 2020-08-22 14:51:32 · 195 阅读 · 0 评论