![](https://img-blog.csdnimg.cn/20190918135101160.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
【JavaScript 专栏】
javaScript
Domi 的笔记
好好学习,好好总结,热爱生活,热爱工作。
展开
-
【 Number.EPSILON 】实现小数相加0.1+0.2=0.3
0.1+0.2 为什么不等于0.3原创 2022-03-16 19:23:24 · 314 阅读 · 0 评论 -
【JavaScript】js实现粘贴复制功能,复制导航内容,快捷键可粘贴
需求:复制导航内容,快捷键可粘贴export const copyUrl = (url, msg) => { let copyTest = url let inputTest = document.createElement('input') inputTest.value = copyTest document.body.appendChild(inputTest) inputTest.select() document.execCommand('Copy') inp原创 2022-03-18 14:52:14 · 1226 阅读 · 0 评论 -
什么是宏任务、微任务?宏任务、微任务有哪些?又是怎么执行的?
lianjie原创 2021-07-21 14:56:36 · 1031 阅读 · 0 评论 -
Promise手写源码以及api详解-----学了就会学完就忘系列
/* 1、通过class关键字创建一个类 MyPromise 2、我们需要使用构造函数constructor 来接受这个构造函数,executor代表执行器(执行器是立即执行的,执行器就代表回调函数)*/const PENGDING = 'pending'const FULFILLED = 'fulfilled'const REJECTED = 'rejected'class MyPromise { constructor(executor) { // 当前原创 2021-06-09 17:20:44 · 299 阅读 · 0 评论 -
「javaScript」使用proxy监听数组的变化
监听数组变化let list = []const listProxy = new Proxy(list, { set(target, property, value) { console.log('set', property, value) //property指下标 value值 target[property] = value return true //表示设置成功 }})listProxy.push(100)...原创 2021-05-28 11:25:31 · 2871 阅读 · 0 评论 -
对象的新方法 Object.is() Object.keys()等
Object.preventExtensions()方法让一个对象变的不可扩展,也就是永远不能再添加新的属性。Object.isExtensible()方法判断一个对象是否是可扩展的(是否可以在它上面添加新的属性)。Object.seal()方法封闭一个对象,阻止添加新属性并将所有现有属性标记为不可配置。当前属性的值只要原来是可写的就可以改变。Object.is(value1, value2);方法判断两个值是否为同一个值。Object.entries()返回一个数组,其元素是与直接在ob原创 2021-04-06 15:26:57 · 181 阅读 · 0 评论 -
js的属性标签---------[configurable][enumerable][writable]以及结合set/ get的使用
获取对象属性我们可以通过Object.getOwnPropertyDescriptor() 方法来获取一个对象的所有属性标签 Object.getOwnPropertyDescriptor({pro:true},'pro'); //Object.{value:true,wirtable:'true,enumerbale:true,configurable:true} Object.getOwnPropertyDescriptor({pro:true},'a');//undefined .原创 2021-04-06 14:45:07 · 366 阅读 · 0 评论 -
js中读写属性的------get/set 方法
var man={ name:'dudu', weibo:'dudu', get age(){ return new Date().getFullYear() - 1988; }, set age(val){ console.log( ' Age can't be set to '+ val) }}console.log(man.age) //27man.age=100 // Age can't be set to 1原创 2021-04-06 14:02:02 · 319 阅读 · 0 评论 -
js----------------------运算符
通过 hasOwnProperty 这个方法来判断这个属性是这个对象本身上的 还是这个对象的原型链上的属性Function Foo(){}Foo.prototype.x=1;var obj=new Foo();obj.x; //1obj.hasOwnProperty('x') //falseobj._proto_.hasOwnProperty('x'); //true ****...原创 2021-03-18 11:07:11 · 78 阅读 · 0 评论 -
promise异步操作----详解
主要用于异步计算可以讲异步操作队列化,按照期望的顺序执行,返回符合预期的结果,可以在对象之间传递和操作promise,帮助我们处理队列为什么异步操作可以避免页面冻结?异步操作常见语法异步操作以事件为主回调主要出现在Ajax 和File Api事件侦听与响应:doncument.getElementById('start').addEventListener('click',start,false);function start(){ //响应事件,进行相应的操作}//jq$('原创 2021-03-17 14:24:38 · 1942 阅读 · 1 评论 -
【javascript 算法】------------------------------ sort排序
- sort() 的定义和基本用法sort() 方法用于对数组的元素进行排序,提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、pandas是什么?示例:pandas 是基于NumPy原创 2021-03-12 13:44:58 · 87 阅读 · 0 评论 -
qrcode生成二维码设置通讯录内容------导入联系人
基本格式设置通讯录名片的内容 let html="BEGIN:VCARD"; html=html+"\n"; html=html+"VERSION:3.0"; html=html+"\n"; html=html+"N:"+'姓 名'; //html=html+"FN:"+'名 姓'; html=html+"\n"; html=html+"TITLE:"+'职位'; html=html+"\n"; html=html+"ADR;WORK:"+'地址'; html=html+"\n"原创 2021-03-08 15:34:43 · 703 阅读 · 0 评论 -
js使用qrcode.react插件生成二维码
下载资源包yarn add qrcode.reactnpm install qrcode.react 首先本地下载 qrcode.react 插件资源包,放入制定项目的node包里面。引入 import {QRCode} from 'qrcode.react'使用//和正常组件一样使用 <QRCode id='qrcode' //二维码内容 value={'设置二维码内容'} size={100} fgColor='#515151' styl.原创 2021-03-08 15:26:19 · 973 阅读 · 0 评论 -
深度树递归处理---让子元素以及子元素孩子中所有的id添加到父元素的字段指定字段中
const children = (arr) => { arr.map(item=>{ item.ids=[] if(item.children&&item.children.length>0){ const deptVos=(value)=>{ value.map(i=>{ item.ids.push(i.id) if(i.children&&i.children.length>0){ .原创 2020-12-25 16:22:30 · 379 阅读 · 0 评论 -
js截取url路径?后面的参数,并获取指定参数或将参数转化成对象的形式,
js截取url路径中的参数,并转换成对象类型 const paramsObj= ( url ) =>{ let params = url.split('?') let _params = params[i].split( '&' ) let obj = {} for( let i = 0; i < parmas.length; i++){ let arr_params = params[i].split( '=' ) obj[arr_params[0]] = a原创 2020-12-25 15:48:19 · 1183 阅读 · 0 评论 -
利用dom中标签的文本节点,将特殊字符类似<;>;这种的字符转为‘<’或‘>‘
利用dom中标签的文本节点,将特殊字符类似<>这种的字符转为‘<’或’>’const htmlEncode = (text) => { let temp = document.createElement("div"); temp.innerHTML = text; const output = temp.innerText || temp.textContent; temp = null; return output; };以上原创 2020-12-23 08:59:18 · 375 阅读 · 0 评论 -
react项目--前端 js调用本地outlook发送邮件并赋值一个或多个收件人
调用本地得到outlook的方法/* * mailto: 表示邮件是收件人; * subject:表示邮件的标题; * body: 表示邮件的内容;*/<a href="mailto:xiaopangzi@163.com?subject=邮件标题&body=邮件内容"> //同时给赋值多个收件人 多个收件人以英文符号 ; 隔开<a href="mailto:xiaopangzi@163.com;xiaopangzi@163.com?subject=标题&bo原创 2020-12-18 10:26:05 · 2539 阅读 · 0 评论 -
react 中引入图片不显示问题
通常我们引入图片<img src='图片路径' alt=''/>在React 中我们使用上面的写法引入会图片加载不出来,不显示。所以我们在react中使用以下两种方式去引入图片:组件方式引入:import ImageOne from '图片路径';//直接当成组件去使用<img src={ImageOne } alt='' />reauire 直接引入图片地址: <img s rc={ require('图片路径')} alt='' />原创 2020-12-17 13:25:42 · 3552 阅读 · 0 评论 -
前端js处理数据千分位并保留指定小数位
js处理数据,是后台返回的金钱份额千分位展示 并保留两位小数/* * 参数 s :要处理的数据 * 参数 n :保留的小数数量。不传值,则默认是2位小数 */export const percentMoney=(s,n)=>{ n = n > 0 && n <= 20 ? n : 2; s = parseFloat((s + '').replace(/[^\d\.-]/g, '')).toFixed(n) + ''; var l = s.split('.'原创 2020-12-16 09:41:44 · 1537 阅读 · 0 评论 -
获取同一个DOM 中有相同字符串的所有组件
获取同一个DOM 中有相同字符串的所有组件/** conatiner 当前的DOM 或者为document* subIdKey 相似的id的字符串 */const GetSameKey =( container,subIdKey)=>{ let reConArry=[]; if(container && container.childNodes && container.childNodes.length>0){ for( let i=0;原创 2020-12-15 11:16:13 · 135 阅读 · 0 评论 -
js----------禁止默认事件和禁止冒泡事件
冒泡和捕获是事件的不同行为使用event.stopPropagation()可以阻止捕获和冒泡阶段中当前事件的进一步传播。使用event.preventDefault()可以取消默认事件今天遇到的是 点击子元素 自动触发父元素的点击事件,所以使用了取消默认事件...原创 2020-11-20 10:35:38 · 134 阅读 · 0 评论