JavaScript
文章平均质量分 53
记录JavaScript知识点
冰淇淋ly
越努力越幸运!
展开
-
js每一行固定文字,其余换行,按指定长度切割字符串
项目要求是一行放6个字,冒号要跟最后一个字连一起.通过6的倍数来切割字符串,加上换行符\n,最后一行加上冒号原创 2023-04-04 17:27:18 · 715 阅读 · 1 评论 -
js递归树形结构去掉不符合条件的
去掉a数组中不在b数组中的年龄,类似案例还有菜单的权限筛选var a = [ {name:'22',age:99, child:[ {name:'22',age:69}, {name:'22',age:99} ]}, {name:'22',age:9, child:[ {name:'22',age:99}, {name:'22',age:19} ]}, {name:'22',age:79, child:[ {name:'22',age:99}, {name:'2原创 2022-04-12 15:15:39 · 1594 阅读 · 0 评论 -
js浅拷贝和深拷贝
1、JS数据类型基本数据类型:Boolean、String、Number、null、undefined引用数据类型:Object、Array、Function、RegExp、Date等2、深拷贝与浅拷贝深拷贝和浅拷贝都只针对引用数据类型,浅拷贝会对对象逐个成员依次拷贝,但只复制内存地址,而不复制对象本身,新旧对象成员还是共享同一内存;深拷贝会另外创建一个一模一样的对象,新对象跟原对象不共享内存,修改新对象不会改到原对象。区别:浅拷贝只复制对象的第一层属性,而深拷贝会对对象的属性进行递归原创 2022-04-12 13:39:47 · 3087 阅读 · 0 评论 -
js数组常见操作方法总结
1.合并数组var arr1 = [1,2,3]var arr2 = [4,5]var arr3 = arr1.concat(arr2)2.数组转换成字符串var arr = [2,3,4]console.log(arr.join()) //2,3,4console.log(arr.join('-')) //2-3-4 指定字符连接3.向数组末尾追加元素var a = [2,3,4]a.push(5,9)console.log(a)//[2,3,4,5,9]4...原创 2022-04-11 10:16:16 · 905 阅读 · 0 评论 -
js字符串常见操作方法
1.获取指定字符的前/后的值str = "123~456”str.split("~")[0] 输出为 123str.split("~")[1] 输出为 4562.获取指定位置字符var str="Hello world!"str.substring(3) 输出为 lo world!str.substring(3,7) 输出为 lo wstr.slice(3,7) 输出为 lo wstr.slice(-3,-1) 输出为 ld 倒数第三个位置到倒数第一个位置...原创 2022-04-02 09:18:44 · 738 阅读 · 0 评论 -
Cannot read properties of undefined (reading ‘filter‘)
背景:在echarts子组件,偶尔初次加载时候没值,判断一下就好了原创 2022-02-24 14:33:30 · 6526 阅读 · 2 评论 -
去掉数组对象前的属性并按指定顺序(动态给数组起名)
将下面这组数据改成这样实现:利用对象动态给数组起名let obj = {}; let arr = []; console.log("前",res.data) for (let i in res.data) { obj["arr" + i] = []; obj["arr" + i].push(res.data[i].logType); obj["arr" + i].push(r原创 2022-02-24 14:20:27 · 320 阅读 · 1 评论 -
面向对象和类的继承
1 面向过程:按照步骤一步一步来比如把大象装进冰箱:开门,把大象装进去,关门面向对象:按照对象功能划分问题大象功能:进去,冰箱功能:打开,关闭。最后使用大象和冰箱的功能2 面向对象特性:封装性,继承性,多态性3 对象由属性和方法组成:属性:事物的特征,比如手机的颜色大小(常用名词)方法:事物的行为,比如手机可以打电话(常用动词)4 类:抽象了对象的公共部分,泛指某一大类对象:对象特指某一个,通过类实例化一个具体的对象5 面向对象思维特点:(1)抽取对象共用的属性和行为封装成一个类(模板原创 2021-01-18 17:48:02 · 81 阅读 · 0 评论 -
webAPI
API:应用程序编程接口Web API:浏览器提供的一套操作浏览器功能和页面元素的APIDOM(文档对象模型):处理可扩展标记语言的标准编程接口2.获取元素<div id="a" class="b" ></div>document.getElementById('a'); //根据id获取元素document.getElementsByTagName('div'); //标签名 element.getElementsByTagName('div')//以下H.原创 2021-01-13 18:00:27 · 195 阅读 · 0 评论 -
js放大镜效果
<!DOCTYPE html><html lang="zh"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title></title>原创 2020-12-31 16:37:17 · 66 阅读 · 0 评论 -
js处理浏览器兼容性
// 处理浏览器兼容性// 获取第一个子元素function getFirstElementChild(element) { var node, nodes = element.childNodes, i = 0; while (node = nodes[i++]) { if (node.nodeType === 1) { return node; } } return null;}// 处理浏览器兼容性//原创 2020-12-21 09:56:04 · 163 阅读 · 0 评论 -
js函数
1.求1-100的累加和function getSum(num1,num2) { var sum = 0; for(var i = num1; i <= num2; i++) { sum += i; }; return sum;}console.log(getSum(1,3)) 2.求两个数最大值function getMax(num1,num2) { if(num1 > num2) { return num1; }else { return num2; }原创 2020-12-16 17:43:57 · 105 阅读 · 0 评论 -
js数组小案例
1.求数组最大值var arr = [2,45,33,87];var max = arr[0];for (var i = 1; i < arr.length; i++) { if(arr[i] > max) { max = arr[i] }}console.log(max)2.求数组所有数的和以及平均值var arr = [2,45,33,87];var sum = 0;var average = 0;for (var i = 0; i < arr.lengt原创 2020-12-16 11:34:40 · 338 阅读 · 0 评论