![](https://img-blog.csdnimg.cn/20190927151132530.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Javascript
前端小99
一点一滴 不忘初心
心有猛虎 细嗅蔷薇
展开
-
js 控制一次加载一张图片,加载完成后再加载下一张
【代码】js 控制一次加载一张图片,加载完成后再加载下一张。原创 2023-09-07 14:01:54 · 645 阅读 · 0 评论 -
js的各种位置,比如clientHeight,scrollHeight,offsetHeight ,以及scrollTop, offsetTop,clientTop的区别?
scrollHeight: 因为子元素比父元素高,父元素不想被子元素撑的一样高就显示出了滚动条,在滚动的过程中本元素有部分被隐藏了,scrollHeight代表包括当前不可见部分的元素的高度。对于inline的元素这个属性一直是0,单位px,只读元素。scrollTop: 代表在有滚动条时,滚动条向下滚动的距离也就是元素顶部被遮住部分的高度。5、srcollTop:滚动后被隐藏的高度,获取对象相对于由offsetParent属性指定的父坐标(css定位的元素或body元素)距离顶端的高度。原创 2023-09-07 13:58:58 · 252 阅读 · 0 评论 -
js中some和every用法
some() 方法用于检测数组中的元素是否满足指定条件,如果有一个元素满足条件,则表达式返回true , 剩余的元素不会再执行检测。如果没有满足条件的元素,则返回false。every跟some不同点在于,every要判断数组中是否每个元素都满足条件,只有都满足条件才返回true;只要有一个不满足就返回false;some一般使用场景大多都是用在:判断一个字段是否存在在某个数组中。some() 不会对空数组进行检测。some() 不会改变原始数组。原创 2023-05-29 16:13:24 · 1506 阅读 · 0 评论 -
JavaScript中的every方法用于检测数组中的所有元素是否都满足指定条件
every方法用于检测数组中的所有元素是否都满足指定条件原创 2023-02-10 10:28:59 · 900 阅读 · 0 评论 -
Javascript------去除字符串中的空格
最常用)全部去除掉空格。原创 2022-07-21 11:34:54 · 596 阅读 · 0 评论 -
JavaScript判断数据类型有几种方法,以及它们的区别
JavaScript有五种数据判断类型方法:原创 2022-07-21 11:05:05 · 268 阅读 · 0 评论 -
JS数组扁平化(flat)方法总结详解
需求:多维数组=>一维数组 1 2 let ary = [1, [2, [3, [4, 5]]], 6]; let str = JSON.stringify(ary); 第0种处理:直接的调用 1 arr_flat = arr.flat(Infinity); 第一种处理 1 ary = str.replace(/(\[\]))/g, '').split(',');原创 2021-10-09 18:03:10 · 973 阅读 · 0 评论 -
vue文件里写自己的function 转时间时期年月时分秒
可以写在export default的下方export default{}function toHHmmss (date) { var time; var hours = parseInt((data % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60)); var minutes = parseInt((data % (1000 * 60 * 60)) / (1000 * 60)); var seconds = (data % (1000 ...原创 2021-08-26 10:41:24 · 137 阅读 · 0 评论 -
js将时间戳转为时间日期格式
封装方法 getBeforeDate(num, time) { let n = num; let d = ''; if(time) { d = new Date(time); } else { d = new Date(); } let year = d.getFullYear(); let m.原创 2021-07-08 10:58:52 · 1102 阅读 · 0 评论 -
如何从数组对象中取出一个值存放在数组中
// 获取勾选内容 handleSelectionChange(val) { //当前选中勾选的数组对象 console.log(val) // 数组对象 // eslint-disable-next-line no-unused-vars let arrCode = []; //定义数组 val .map((item) => { //遍历当前的数组对象 arrCode.push(item.p...原创 2021-07-08 10:43:00 · 3951 阅读 · 0 评论 -
接口返回多个数组对象的方法
mounted() { // 列表参数获取 以及后面传递参数给后台 这里返回过来的上一个数组对象 this.queryList = this.$route.query.list; console.log(this.queryList) }, methods: { batchPushBtn() { // 定义方法 let timeArr = []; // 定义一个数组存放多个数据对象 this.queryList.forEach((item)=>{ ..原创 2021-07-08 10:25:05 · 1285 阅读 · 0 评论 -
JS中将对象转化为数组
JS中将对象转化为数组前言其实这本来应该是一个很基础的问题了,但我之做一想记录一下是因为之前因为对象转数组的时候卡住了后来弄了出来,但最近再遇到这个问题时竟然又卡主了,所以,关于这个问题,如何把一个对象{'未完成':5, '已完成':8, '待确认':4, '已取消':6}转为[{"未完成":5},{"已完成":8},{"待确认":4},{"已取消":6}],你已经知道如何操作了,那这篇文章你也就没有必要看了。对象的两种取值方式我们都知道,JS中对象有两种取值方式,通过在.后面直接加属性名取原创 2021-02-02 09:41:30 · 1483 阅读 · 0 评论 -
js遍历对象的几种方法
第一种: for......inconst obj = { id:1, name:'zhangsan', age:18} for(let key in obj){ console.log(key + '---' + obj[key]) }输出结果:第二种:1)、Object.keys(obj)2)、Object.values(obj)参数:obj:...原创 2021-01-09 11:00:06 · 588 阅读 · 1 评论 -
三元表达式多个条件判断
{this.state.walkclassdetailinfo.sexType == 1 ? '均衡' : (this.state.walkclassdetailinfo.sexType==0?'--':'不均衡')}sexType=0 输出 --sexType=1 输出 均衡sexType=2 输出 不均衡var a = 3;var b = a === 1 ? '是1' : (a === 2 ? '是2' : '不是1也不是2')console.log(b); //不是1也...原创 2020-11-26 14:39:14 · 3790 阅读 · 0 评论 -
JS将两个数组合并成一个对象
将两个数组合并成一个对象数组 let options = []; let times = [30, 60, 120, 300, 420, 540, 720, 900, 1200]; let timesDesc = ["30分钟", "1小时", "2小时", "5小时", "7小时", "9小时", "12小时", "15小时", "20小时"]; options=[ { time: 30, time原创 2020-11-11 15:13:41 · 5237 阅读 · 0 评论 -
字符串截取slice substring substr的区别
slice()定义和用法slice() 方法可从已有的数组中返回选定的元素。string.slice(start, end)提取一个字符串string.substring(start, end)提取一个字符串,end不支持负数string.substr(start, len)提取一个长度为len的字符串1、slice和substring接收的是起始位置和结束位置(不包括结束位置),而substr接收的则是起始位置和所要返回的字符串长度。直接看下面例子: var...原创 2020-09-23 13:51:09 · 345 阅读 · 0 评论 -
FormData增 删 查 改 判定是否存在 表单序列化 上传文件
FormData的主要用途有两个:1、将form表单元素的name与value进行组合,实现表单数据的序列化,从而减少表单元素的拼接,提高工作效率。2、异步上传文件一、创建formData对象1、创建一个空对象://通过FormData构造函数创建一个空对象var formdata=new FormData();//可以通过append()方法来追加数据 laotieformdata.append("name","laotie");//通过get方法对值进行读取原创 2020-09-13 21:00:42 · 1377 阅读 · 0 评论 -
Js数组去重的五种方式
一、利用双层 for 循环var fruits=['苹果','香蕉','葡萄','火龙果','苹果','葡萄','火龙果']//双重循环function distinct(arr) { for (let i=0, len=arr.length; i<len; i++) { for (let j=i+1; j<len; j++) { if (arr[i] == arr[j]) { arr.splice(j,原创 2020-09-10 23:09:18 · 1677 阅读 · 0 评论 -
JavaScript constructor 属性详解
对象的constructor属性用于返回创建该对象的函数,也就是我们常说的构造函数。在JavaScript中,每个具有原型的对象都会自动获得constructor属性。除了arguments、Enumerator、Error、Global、Math、RegExp、Regular Expression等一些特殊对象之外,其他所有的JavaScript内置对象都具备constructor属性。例如:Array、Boolean、Date、Function、Number、Object、String等。.原创 2020-09-10 21:44:07 · 7246 阅读 · 6 评论 -
javascript中对象特性
对象是什么,我们用属性来描述属性是什么, 我们用特性来描述特性是用来描述属性的Object.defineProperty该方法用于设置单一属性特性使用方式:Object.defineProperty(obj, property, descript)obj:要设置特性的对象property: 要设置的特性属性descript:描述特性对象特性--可枚举性 enumerable: true | false使用方式:Object.definePrope...原创 2020-09-06 16:51:42 · 537 阅读 · 0 评论 -
javascript中的严格模式
1.使用严格模式的使用很简单,只有在代码首部加入字符串 "use strict"。必须在首部即首部指其前面没有任何有效js代码除注释,否则无效2.严格模式与正常模式之间的区别:在严格模式下定义变量必须使用var进行声明在严格模式下定义数值的时候不能使用八进制在严格模式下不能使用arguments.callee在严格模式下不能使用delete删除变量在严格模式下不能使用保留字定义变量在严格模式下不能使用eval函数在严格模式下不能使用with方法在严格模式下全局函.原创 2020-09-04 22:16:36 · 178 阅读 · 0 评论 -
js中this指向 call与apply与bind方法的区别
call与apply与bind的共同点 作用:为函数作用域(当函数执行的时候,改变函数作用域,并传递参数)call与apply的区别 他们都是改变作用域的方法,都是在调用改方法的时候,执行函数并改变作用域,第一个参数都是改变作用域 call从第二个参数开始,表示传递给函数的参数function fn(){ console.log(this,arguments)}//函数自执行fn();fa.call(document,1,2,...原创 2020-09-04 21:20:09 · 197 阅读 · 0 评论 -
JS中的forEach,for in,for of和for的遍历优缺点及区别
forEach:(可以三个参数,第一个是value,第二个是index,第三个是数组体) 缺点:不能同时遍历多个集合,在遍历的时候无法修改和删除集合数据, 方法不能使用break,continue语句跳出循环,或者使用return从函数体返回,对于空数组不会执行回调函数 优点:便利的时候更加简洁,效率和for循环相同,不用关心集合下标的问题,减少了出错的效率 定义:用...原创 2020-09-04 19:32:49 · 2110 阅读 · 3 评论 -
js判断数组的六种方法
① instanceof 操作符判断用法:arr instanceof Arrayinstanceof 主要是用来判断某个实例是否属于某个对象function obj(){}let o1 = new obj();console.log(o1 instanceof obj); // true那么我们用instanceof 来判断数组的方法如下:let str={"city":"武汉","city":"上海"}let arr = [];console...原创 2020-09-04 18:22:29 · 4013 阅读 · 0 评论 -
JSON总结
json(JavaScript Object Notation) javascript对象表示法。k: v 属性名必须书写双引号每一项之间使用逗号隔开,最后一项不用写逗号读取// 点语法console.log(json.name);// 中括号console.log(json["height"]);一:在JSON中,有两种结构:对象和数组。1.对象var packJson = {"name":"Liza", "password":"123"};一个对象以“{..原创 2020-08-31 17:37:01 · 276 阅读 · 0 评论 -
IIFE理解
1. 定义IIFE: Immediately Invoked Function Expression,意为立即调用的函数表达式,也就是说,声明函数的同时立即调用这个函数。对比一下,这是不采用IIFE时的函数声明和函数调用:function foo(){ var a = 10; console.log(a);}foo();下面是IIFE形式的函数调用:(function foo(){ var a = 10; console.log(a);})();函数的声明和II原创 2020-08-26 21:26:50 · 471 阅读 · 0 评论 -
js中arguments理解
什么是arguments? 它是JS的一个内置对象 .函数内部的类数组对象。因为在js函数对象中传递的形参 可以传也可以不传,若方法里没有写参数却传入了参数,该如何拿到参数呢,答案就是arguments了 js语法不支持重载!但可用arguments对象模拟重载效果。 arguments对象:函数对象内,自动创建的专门接收所有参数值得类数组对象。 arguments[i]: 获得传入的下标为i的参数值 ar...原创 2020-08-26 19:57:37 · 3723 阅读 · 0 评论 -
js正则表达式
字符串方法:split() 根据匹配字符串切割父字符串,返回切割后的数组。// 参数:切割字符 返回值数组var str = "ajbdsbfkbjfbk";// 切割字符"b"字符串方法// console.log(str.split("b"));// 参数:正则表达式 匹配b字符 /b/console.log(str.split(/b/)); //// 参数:正则表达式 匹配连续多个bconsole.log("ajbbbbbdsbbfkbjfbbbbbbbbb原创 2020-08-26 17:34:46 · 351 阅读 · 0 评论 -
js中字符串方法总结
1:charAt 查找返回指定位置的字符let str = "js常用字符串方法总结"let str1 = str.charAt(3) // 下标为3的字符console.log(str1) //用2:length 字符串中包含字符总个数(字母,数字,汉字,标点,空格等)let str = "js常用字符串方法总结"for (var i = 0; i < str.length; i++) { console.log(str.charAt(i)原创 2020-08-26 12:50:41 · 338 阅读 · 0 评论 -
array数组总结(包含ES6)
1: push()在数组结尾增加数据 参数:添加的数据,可以有多项,用逗号隔开 返回值:新数组长度案例:<script> let arr=["上海","北京","深圳","武汉"] console.log(arr.push("成都")) /* 这里返回的是数组的长度 5*/ arr.push("成都") console.log(arr...原创 2020-08-24 22:03:43 · 1032 阅读 · 0 评论 -
自己理解的闭包的含义以及优缺点适用场景
闭包:函数可以在外部间接访问内部的变量就叫闭包 「函数」和「函数内部能访问到的变量」(也叫环境)的总和,就是一个闭包 闭包常常用来「间接访问一个变量」。换句话说,「隐藏一个变量」。 优点:因为JS回收机制导致的,因为JS会在变量使用过后将其清理, 但是闭包调用了函数的变量,所以函数的变量将会一直保存下来,...原创 2020-08-24 18:06:09 · 675 阅读 · 0 评论 -
js中renturn与break和continue的区别
3个关键词的含义和比较在break,continue和return 三个关键字中,break,continue是化为一类的,return 是函数返回语句,但是返回的同时也将函数停止。相同之处:三个都会将此时进行的语句停止。不同之处:1、break:是立即结束语句,并跳出语句,进行下个语句执行。2、continue:是停止当前语句,并从头执行该语句。3、return:停止函数。4、使用的语句环境不一样,break和continue是用在循环或switch语句中,return是用..原创 2020-08-24 15:14:17 · 592 阅读 · 0 评论 -
js中math常用使用方法
1.min()和max()方法Math.min()用于确定一组数值中的最小值。Math.max()用于确定一组数值中的最大值。alert(Math.min(2,4,3,6,3,8,0,1,3)); //最小值alert(Math.max(4,7,8,3,1,9,6,0,3,2)); //最大值2.舍入方法Math.ceil()执行向上舍入,即它总是将数值向上舍入为最接近的整数;Math.floor()原创 2020-08-23 15:12:03 · 2883 阅读 · 0 评论 -
Javascript数据类型强制转换
一、转换为数值类型1、Number(参数)把任何的类型转换为数值类型A.如果是布尔值,false为0,true为1B.如果是数字,转换成为本身。将无意义的后导0去掉。C.如果Null转换为0D.如果是undefined转换为NaNnotanumberE.如果对象则会先调用对象的valueOf(),如果valueOf()返回的是NaN,然后再调用对象的toString()F.如果是字符串...原创 2020-08-22 18:23:10 · 800 阅读 · 0 评论 -
js中的用途 组成部分 常用语法 字面类 数字 字符串 布尔值 undefind null Nan 运算符
js中用途: 数据验证 读写HTML元素 与浏览器进行交互效果 网页特效 web游戏制作 基于Node.js技术进行服务器编程javascript组成部分常用语法的用法alert 弹出框 :window.alert() 对象.方法...原创 2019-03-24 20:18:37 · 294 阅读 · 0 评论 -
逻辑运算符 运算符Math 短路语法 比较运算符 赋值运算符
逻辑运算符:&& :逻辑与运算符 :总结:都真才真,一假则假|| 逻辑或运算符 总结:都假才假,一真则真! 逻辑非运算符!true 结果false!false 结果true非布尔值参与逻辑运算结果不一定是布尔值隐式真:非0数字,非空字符串隐式假:“”, 0, NaN,undefined, null短路语法:...原创 2019-03-24 21:20:39 · 356 阅读 · 0 评论 -
三元表达式 if elseif案列 switch case breank案列
语法: 条件表达式 ? 值1 : 值2; 当条件表达式为真时,三元表达式结果是值1;当条件表达式为假时,三元表达式结果是值2;当结果是二选一时使用三元表达式更简单。当工作年限不满1年,工资小于8000,年终奖为工资的1倍,否则是1.2倍;当工作年限不满2年,工资小于10000,年终奖为工资的1.5倍,否则是1.7倍;当工作年限等于超过2年,工资小于1...原创 2019-03-24 21:47:26 · 743 阅读 · 0 评论 -
onkeydown、onkeyup、onclick、onchange、oninput、onpropertychange 的用法和区别
onkeydown、onkeyup、onclickonkeydown 是按键按下时触发;onkeyup 是按键弹起时触发;onclick 是按键按下并弹起时触发。有一种情况,就是按住按键不放,此时会不断地触发 onkeydown,但 onkeyup、onclick 只是在抬起按键的时候触发一次。要实时检测正在输字的文本框中输入了多少文字,怎么办?用 onkeyup 不可取!因为我们前面讲过,如果按...原创 2018-04-23 10:31:39 · 1025 阅读 · 0 评论