
javaScript
xuxb000
物极必反,冥冥之中自有定数
展开
-
react 函数式组件通信(父传子、子传父、兄弟之间)
例: 通过在父组件中点击按钮打开弹框。例: 通过在子组件中点击按钮关闭弹框。借助中间的父组件传值就行。原创 2024-03-20 10:27:58 · 485 阅读 · 0 评论 -
为什么会有BigInt?
JavaScript中Number.MAX_SAFE_INTEGER表示最⼤安全数字,计算结果是9007199254740991,即在这个数范围内不会出现精度丢失(⼩数除外)。但是⼀旦超过这个范围,js就会出现计算不准确的情况,这在⼤数计算的时候不得不依靠⼀些第三⽅库进⾏解决,因此官⽅提出了BigInt来解决此问题。原创 2024-03-12 15:08:55 · 476 阅读 · 0 评论 -
js中有哪些数据类型,它们有什么区别?
2,引用数据类型存储在堆(heap)中的对象,占据空间大、大小不固定。2,BigInt 是一种数字类型的数据,它可以表示任意精度格式的整数,使用 BigInt 可以安全地存储和操作大整数,即使这个数已经超出了 Number 能够表示的安全整数范围。1,栈:原始数据类型(Undefined、Null、Boolean、Number、String、Symbol、BigInt)1,原始数据类型直接存储在栈(stack)中的简单数据段,占据空间小、大小固定,属于被频繁使用数据,所以放入栈中存储;原创 2024-03-12 15:06:46 · 529 阅读 · 0 评论 -
js递归过滤树形结构数据
// 需要过滤的树形结构数组var arr = [{ pId: null, positionId: '01', children:[ {pId: '01', positionId: '00012', children:[]}, {pId: '01', positionId: '00013', children:[]}, {pId: '01', positionId: '00014', children:[]}, {pId: '01', positionId: '00015', childre原创 2022-04-14 15:16:04 · 1114 阅读 · 0 评论 -
三个选择框,当前框选过之后的数据其他两个不能选择
效果图<template> <div class="multi-distribution-head"> <c-product :selectObj="{productType:'一级难度'}" :isIncomingData="true" :productData="showTypeTree1" :defaultCheckedKeys="defaultCheckedKeys" :defaultProps原创 2022-03-16 17:27:15 · 746 阅读 · 0 评论 -
JS常用的数组和字符串互向转换
常用的 数组 <==> 字符串 互转一.字符串转数组(1) split(),里面可传入两个参数,第一个是必填,是以什么方式分割,下面的例子就是以 逗号 分割的第二个参数表示分割到哪个位置var str1 = 'abc,abcd,aaa'var arr1 = str1.split(',')// 在每个逗号(,)处进行分解 ["abc", "abcd", "aaa"]// 在每个逗号(,)处进行分解,且分解到第二个处["abc", "abcd"]console.log(str1.sp原创 2020-05-12 14:37:56 · 263 阅读 · 1 评论 -
js数组几种常见的操作方法攻略
基础篇1.shift// 删除原数组的第一项,并返回删除元素的值,如果数组为空则返回undefinedvar a = [1, 2, 3, 4, 5]var b = a.shift()// a:[2,3,4,5] b:12.unshift// 将参数添加到原数组开头,并返回数组的长度var a = [1, 2, 3, 4, 5]var b = a.unshift(-2, -1)// a;[-2,-1,1,2,3,4,5] b:7//注:此方法在ie6.0下// 测试的返回值始终为unde原创 2020-05-13 10:42:43 · 3568 阅读 · 2 评论 -
js+vue+element-ui数组,相同名字(也可以是其他的区分字段)的数据只做一次合计
数据合计问题今天遇到了一个问题,项目中有一个数据列表,需要做合计,但是需求是名字相同的只做一次合计,如下图:所以做完后根据项目数据,自己造了一个json,做了一个dome,长个记性a: [{name: '张三', label: '1', num: 3}, {name: '李四', label: '2', num: 4}, {name: '王二', label: '3', num: 5}, {name: '张三', label: '1', num: 3}, {n原创 2020-06-23 16:52:54 · 897 阅读 · 1 评论 -
vue 中怎么用事件委托
哈喽,大家好,今天我要介绍一下vue中怎么使用事件委托吧!那说到事件委托,那什么是事件委托呢?大佬就此略过吧,不懂得可以随便阅读一下.事件委托概念:那什么叫事件委托呢?事件委托也叫事件代理,JavaScript高级程序设计上讲:事件委托就是利用事件冒泡,只指定一个事件处理程序,就可以管理某一类型的所有事件。太官方了,不够明了,举个例子吧有三个同事预计会在周一收到快递。为签收快递,有两种办法:一是三个人在公司门口等快递;二是委托给前台小姐姐代为签收。现实当中,我们大都采用委托的方案(公司也不会容忍那么原创 2020-06-30 11:00:33 · 4187 阅读 · 2 评论 -
vue 根据数组对象属性值分类,把一个数组拆分为多个数组
前端必备技能之一,按需分类有给的数据时候为了处理数据方便一些,后端给的数据可能不是我们想要的数据结构,这时候就需要你稍微做一点点的处理才能为自己所用现在有这样一个数组,后端给的,policyDtos: [{clazzType: 1, clazzTypeText: '限签', remark: '严格限签', sourceTypeText: '地区收集'}, {clazzType: 2, clazzTypeText: '限售', remark: '限售', sourceTy原创 2020-07-31 10:49:59 · 10853 阅读 · 10 评论 -
js使用递归,循环树形结构数据
今天在项目中遇到一个这样的问题,需要给树形结构的数据中加一个属性,其实很简单上代码吧// data中定义数据treeData = [{ key: 'num', title: '指标编号', children:[{ key: 'num', title: '指标编号', children:[{ key: 'num', title: '指标编号', children:[{ key: 'num', title: '指标编号', }] }] }]原创 2020-09-25 14:25:00 · 4074 阅读 · 1 评论 -
JS实现导出 || 下载,解析数据流,type设置
导出 || 下载,解析数据流,type设置>>解析数据流let param = {data: this.searchForm.data}this.btnDisabled = truegetDownloadList(param).then((res) => { console.log(res)// 后台返回的是数据流 const link = document.createElement('a') // 解析数据流 let blob = new Blob(原创 2020-11-18 10:01:52 · 765 阅读 · 0 评论 -
优化 JS 条件语句的 5 个技巧
优化 JS 条件语句的 5 个技巧在使用 JavaScript 时,我们会处理很多条件语句,这里有 5 个技巧可以帮助您编写更好、更简洁的条件语句。1、对多个条件使用 Array.includes让我们看看下面的例子:// conditionfunction test(fruit) { if (fruit == 'apple' || fruit == 'strawberry') { console.log('red'); }}乍一看,上面的例子看起来不错。然而,如果还有更多红原创 2020-11-27 10:35:17 · 235 阅读 · 0 评论 -
js数据扁平化和树形(tree)数据, 相互转换
数据扁平化 < == > tree型数据, 相互转换在看之前首先你要先弄明白思路是什么样的, 思路清晰, 看完还能不豁然开朗吗? 答案是肯定的.一,扁平化数据处理成tree树形结构什么是扁平化数据?顾名思义,就是你下面看到的,又扁又平没有起伏的,是不是看完提不起一点兴趣?那我来帮你, 要想处理成tree树形结构,其实就好比小蝌蚪找妈妈, 谁的id对应小蝌蚪的pid谁就是小蝌蚪的妈妈,这样的话,你是不是就帮助小蝌蚪找到妈妈了const jsonData = [ { id: 1,原创 2021-03-05 13:53:49 · 590 阅读 · 1 评论 -
js+indexOf 实现,从 fromIndex 处开始搜索第一次出现的指定值的索引
indexOfString.prototype.indexOf()返回从 fromIndex 处开始搜索第一次出现的指定值的索引,如果未找到,返回 -1str.indexOf(searchValue [, fromIndex])// fromIndex 默认值为 0Array.prototype.indexOf()返回在数组中可以找到一个给定元素的第一个索引,如果不存在,则返回 -1arr.indexOf(searchElement[, fromIndex])function sInde原创 2021-03-30 13:37:43 · 827 阅读 · 0 评论 -
JavaScript代码片段字典(一)
JavaScript代码片段(一)实现字符串长度截取function cutstr(str, len) { var temp; var icount = 0; var patrn = /[^\x00-\xff]/; var strre = ""; for (var i = 0; i < str.length; i++) { if (icount < len - 1) {原创 2021-05-18 13:44:08 · 107 阅读 · 0 评论 -
JavaScript代码片段字典(二)
JavaScript代码片段字典(二)获取域名主机function getHost(url) { var host = "null"; if(typeof url == "undefined"|| null == url) { url = window.location.href; } var regex = /^\w+\:\/\/([^\/]*).*/; var match = url.match(原创 2021-05-18 13:50:59 · 91 阅读 · 0 评论 -
js自定义保留六位小数
如果你使用这个Math.round(),这个toFixed(),还有这个Math.pow(),保留小数位不好使,那就请看过来,使用这个就好了function roundFixed (num, fixed = 2) { let nums = num.toString().split('.') if (nums.length >= 2) { let fixedNum = nums[1] if (fixedNum.length > fixed) { let原创 2021-10-14 10:31:30 · 5136 阅读 · 0 评论 -
js自己封装万能拷贝(深/浅拷贝)方法
一、什么是深拷贝?什么是浅拷贝?浅拷贝只复制一层对象的属性,浅拷贝出来的对象如果改变了第二层或更深的数据会影响原对象。而深拷贝则递归复制了所有层级,改变任何数据都不会影响原对象二、深拷贝和浅拷贝的方法和存在的问题1.JSON.parse(JSON.stringfy())正确处理的对象只有 Number, String, Boolean, Array, 扁平对象,即那些能够被 json 直接表示的数据结构。jQuery的$.extend() 第三方库实现深拷贝没有处理循环引用的问题。项目中如原创 2021-10-14 10:38:44 · 263 阅读 · 0 评论 -
JavaScript代码片段字典(三)
数字千分位分隔export const format = (n) => { let num = n.toString(); let len = num.length; if (len <= 3) { return num; } else { let temp = ''; let remainder = len % 3; if (remainder > 0) { // 不是3的整数倍原创 2021-11-01 14:06:00 · 100 阅读 · 0 评论 -
JS addEventListener() 方法
1,addEventListenerdocument.hidden:表示页面是否隐藏的布尔值。页面隐藏包括 页面在后台标签页中 或者 浏览器最小化 (注意,页面被其他软件遮盖并不算隐藏,比如打开的 sublime 遮住了浏览器)。document.visibilityState:表示下面 4 个可能状态的值hidden:页面在后台标签页中或者浏览器最小化visible:页面在前台标签页中prerender:页面在屏幕外执行预渲染处理 document.hidden 的值为 trueunloade原创 2021-11-19 11:31:49 · 1211 阅读 · 0 评论 -
js 中 try catch用法
try…catch 语句是什么?try…catch 可以测试代码中的错误。try 部分包含需要运行的代码,而 catch 部分包含错误发生时运行的代码。try…catch语法try { //在此运行代码}catch(err){ //在此处理错误}运行流程:try{...}包含块中的代码有错误,则运行catch(err){...}内的代码,否则不运行catch(err){...}内的代码。try…catch案例var array = null;try { doc原创 2022-01-12 13:46:26 · 41567 阅读 · 0 评论