javascript
LLLLLLLLLLLLL刘
Every line of code should appear to be written by a single person, no matter the number of contributors.
不管有多少人参与同一个项目,一定要确保每一行代码都像是同一个人编写的
展开
-
JavaScript工具常用
1.通过Object.protype.hasOwnProperty.call 完成深拷贝动作/** * @Author Object.protype.hasOwnProperty.call * @Date * @Title 深度拷贝对象**/export function extendData(scoreObj, obj) { for (let i in scoreObj) { if (Object.prototype.hasOwnProperty.call(obj,原创 2021-11-20 15:45:38 · 773 阅读 · 0 评论 -
ES6正确使用
一、关于取值的吐槽const obj = { a:1, b:2, c:3, d:4, e:5,}笨拙使用const a = obj.a;const b = obj.b;const c = obj.c;const d = obj.d;const e = obj.e;const f = obj.a + obj.d;const g = obj.c + obj.e;改进const {a,b,c,d,e} = obj;const f = a + d原创 2021-11-16 10:02:35 · 968 阅读 · 0 评论 -
JavaScript知识点
1、localstorage、sessionstorage、与 cookie 的区别? cookie:一般有服务器生成失效时间,如果是在浏览器端生成,cookie默认是关闭浏览器后失效,大小4kb,每次都会携带请求头。localStorage:除非清除否则永久保存,大小5MB,仅存在客户端,不参与通信sessionStorage:仅在当前会话下有效,关闭页面或者清除出浏览器后清除,大小5MB左右,仅在客户端保存,不参与通信2、for…in for…of for…each 的区别 for…i转载 2021-09-27 16:36:52 · 171 阅读 · 0 评论 -
vue 组件开发
组件通信父子子父兄弟祖代后代 (一般用于组件库开发原创 2021-09-13 15:09:48 · 125 阅读 · 0 评论 -
浏览记录
极客导航Echartsuni-appuchartsUviewAntdvelement阿里巴巴图标库原创 2021-03-26 10:59:31 · 108 阅读 · 0 评论 -
Vue 组件传参知识点
**Vue 组件传参知识点**很多时候用$emit携带参数传出事件,并且又需要在父组件中使用自定义参数时,这时我们就无法接受到子组件传出的参数了。找到了两种方法可以同时添加自定义参数的方法。方法一子组件传出单个参数时:子组件传参this.$emit('test',this.param)父组件接收@test='test($event,userDefined)'方法二子组件传出多个参数时:子组件传参this.$emit('test',this.param1,this.param2原创 2021-01-21 09:15:40 · 150 阅读 · 0 评论 -
vuex的五个属性和基本用法
VueX 是一个专门为 Vue.js 应用设计的状态管理构架,统一管理和维护各个vue组件的可变化状态(你可以理解成 vue 组件里的某些 data )。Vuex有五个核心概念:state, getters, mutations, actions, modules。1. state:vuex的基本数据,用来存储变量2. geeter:从基本数据(state)派生的数据,相当于state的计算属性3. mutation:提交更新数据的方法,必须是同步的(如果需要异步使用action)。每个 m原创 2020-11-21 09:49:26 · 2062 阅读 · 0 评论 -
http-CORS策略
Access to XMLHttpRequest at 'https://XXXXX.com/api/center/notify' from origin 'http://localhost:9090' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: The value of the 'Access-Control-Allow-Origin' header in原创 2020-09-24 17:17:01 · 439 阅读 · 0 评论 -
vue文件导出类型详解及处理方式
responseType值的类型可为如下值数据类型‘’DOMString(默认类型)arraybufferarraybuffer对象blobBlob对象documentDocument对象JSONjavaScripe object,parsed from a JSON string returned by the servertextDOMStringaxios请求下载导出一个文件,请求成功时返回的是一个流形式的文件,需要设置respon原创 2020-08-31 10:30:53 · 1657 阅读 · 0 评论 -
vue金额计算精准度问题
今天用vue做小数点转换百分比的时候遇到:36*19.2 = 691.1999999999999 ,起初以为是vue计算方式有问题,后来想到js有小数点失精的问题,结果测试了一下果然是这个问题:js失精算法console.log(0.1+0.2); // 0.30000000000000004console.log(0.07*100); // 7.000000000000001console.log(0.119*100); // 11.899999999999999…结果为什么会这样?原创 2020-08-27 15:20:34 · 5738 阅读 · 0 评论 -
JS的十大经典算法
冒泡排序(Bubble Sort)冒泡排序须知:作为最简单的排序算法之一,冒泡排序给我的感觉就像Abandon在单词书里出现的感觉一样,每次都在第一页第一位,所以最熟悉。。。冒泡排序还有一种优化算法,就是立一个flag,当在一趟序列遍历中元素没有发生交换,则证明该序列已经有序。但这种改进对于提升性能来说并没有什么太大作用。。。什么时候最快(Best Cases):当输入的数据已经是正序时(都已经是正序了,我还要你冒泡排序有何用啊。。。。)什么时候最慢(Worst Cases):当输入的数据是反序转载 2020-08-25 11:25:39 · 247 阅读 · 0 评论 -
JavaScript中对象转数组方法
**1、Array.from(object)**用于数组的浅拷贝。就是将一个类数组对象或者可遍历对象转换成一个真正的数组。object中必须有length属性,返回的数组长度取决于length长度, key 值必须是数值let obj = { 0: '1', 1: '2', 2: '3', 'length': 3} let arr = Array.from(obj)console.log(arr);//[1,2,3]**2、Object.keys(原创 2020-06-03 16:24:14 · 1037 阅读 · 0 评论 -
vue简单实现拖拽添加数据
拖拽事件和属性标记 这个很重要!!! 这个决定了拖拽事件的行为。当点击开始拖拽之后,鼠标点击所在的位置就是标记。dragstart:当单击下鼠标,并移动之后执行。drag:在dragstart执行之后,鼠标在移动时连续触发。dragend:当拖拽行为结束,也就是松开鼠标的时候触发。dragenter:当正在拖拽的元素的标记进入某个Dom元素时触发,自身首先会触发。被进入的Dom元素会触发...原创 2020-03-31 14:42:23 · 4319 阅读 · 4 评论 -
JS数组的交集、差集、并集、补集(多种实现方式)
方法一:最普遍的做法使用 ES5 语法来实现虽然会麻烦些,但兼容性最好,不用考虑浏览器 JavaScript 版本。也不用引入其他第三方库。1,直接使用 filter、concat 来计算var a = [1,2,3,4,5]var b = [2,4,6,8,10]//交集var c = a.filter(function(v){ return b.indexOf(v) > -1...原创 2020-03-03 17:50:35 · 1018 阅读 · 0 评论 -
js常用工具类库
1、关于时间格式化的方法(1)时间格式处理方法/** * 格式化时间 * @param date 日期 * @param format 需要转出的格式 * @returns {*} */function dateTimeFormatter (date, format) { if (!date || date === '') { return '' } if ...转载 2019-11-19 15:26:46 · 473 阅读 · 0 评论 -
JavaScript 复杂判断的更优雅写法
前提我们编写js代码时经常遇到复杂逻辑判断的情况,通常大家可以用if/else或者switch来实现多个条件判断,但这样会有个问题,随着逻辑复杂度的增加,代码中的if/else/switch会变得越来越臃肿,越来越看不懂,那么如何更优雅的写判断逻辑,本文带你试一下。举个例子先看一段代码/** * 按钮点击事件 * @param {number} status 活动状态:1 开团进行中 ...转载 2019-11-14 18:28:23 · 138 阅读 · 0 评论 -
常见es6算法
1、js 统计一个字符串出现频率最高的字母/数字let str = 'asdfghjklaqwertyuiopiaia';const strChar = str => { let string = [...str], maxValue = '', obj = {}, max = 0; string.forEach(value...原创 2019-11-06 18:02:11 · 672 阅读 · 0 评论 -
vue 获取实时时间
html显示<span class="fixed-h time">{{currentTime}}</span>变量定义data() { return { timer: "", //定义一个定时器的变量 currentTime: '' // 获取当前时间 }; },获取时间 created() { let _t...原创 2019-10-30 18:09:59 · 993 阅读 · 0 评论 -
javascript截取字符串方法实例
JS截取字符串可使用 substring()或者slice()函数:substring()定义:substring(start,end)表示从start到end之间的字符串,包括start位置的字符但是不包括end位置的字符。功能:字符串截取,比如想从"MinidxSearchEngine"中得到"Minidx"就要用到substring(0,6)示例var src="images/...原创 2019-10-26 12:48:11 · 217 阅读 · 0 评论 -
new Date()获取当前时间,年月日、时分秒
const d = new Date();d.getFullYear(); //获取当前年d.getMonth() + 1 ;//获取当前月 默认0-11d.getDay(); //获取当前日d.getHours()//获取当前小时d.getMinutes())//获取当前分d.getSeconds()//获取当前秒d.getMilliseconds()...原创 2019-10-16 11:08:27 · 38109 阅读 · 0 评论 -
javascript面向对象
封装对于一些功能相同或者相似的代码,我们可以放到一个函数中去,多次用到此功能时,我们只需要调用即可,无需多次重写。在这里我们可以理解为创造对象的几种模式:单例模式,工厂模式,构造函数模式,原型模式等。继承子类可以继承父类的属性和方法多态(重载和重写)重载:严格意义上说js中没有重载的功能,不过我们可以通过判断函数的参数的不同来实现不同的功能来模拟重载。重写:子类可以改写父...原创 2019-06-25 16:45:15 · 123 阅读 · 0 评论 -
ES5与ES6以及部分数组变异函数
ES6实现方式let arr1 = [1, 1, 2, 3, 6, 9, 5, 5, 4]let arr2 = [1, 2, 5, 4, 9, 7, 7, 8, 8]function uniqueArr(arr1,arr2) { //合并两个数组 arr1.push(...arr2)//或者arr1 = [...arr1,...arr2] //去重 let a...原创 2019-07-08 09:27:33 · 263 阅读 · 0 评论 -
JavaScript之DOM操作
1.理解DOM: DOM(Document Object Model ,文档对象模型)一种独立于语言,用于操作xml,html文档的应用编程接口。怎么说,我从两个角度理解:对于JavaScript,为了能够使JavaScript操作Html,JavaScript就有了一套自己的dom编程接口。对于Html,dom使得html形成一棵dom树,类似于一颗家族树一样,一层接一层,子子孙孙。...转载 2019-06-27 10:14:00 · 117 阅读 · 0 评论 -
Vue.js语法糖整理
el:element 需要获取的元素,一定是HTML中的根容器元素data:用于数据的存储methods:用于存储各种方法数据绑定字面量只加载一次{{* msg}}data里面可以进行简单的运算;methods:{ getHome(){ return "早上好" }}--------------------------------------------------HTM...转载 2019-07-15 14:40:56 · 203 阅读 · 0 评论 -
js数据存储方式
session、cookie、sessionStorage、localStorage等区别?session会在一定的时间内存储在服务器端,用来保存用户的对象信息,session不能区分路径,同一个用户在访问一个网站期间,所有的session在任何一个地方都可以访问到;cookie、sessionStorage、localStorage的相同点是都存储在客户端不同点分别表现在存储大小有效时间...原创 2019-07-18 14:23:40 · 1779 阅读 · 0 评论 -
vue中ref的作用
vue中的ref其实功能很强大,下面介绍一下如何使用。基本用法,本页面获取dom元素<template> <div id="app"> <div ref="testDom">11111</div> <button @click="getTest">获取test节点</button> </div...转载 2019-07-12 11:12:55 · 221 阅读 · 0 评论 -
JavaScript学习
js常用定义方式var,let,const;ES5 专用定义变量例如:var a = 10;// var a;//不会报错console.log('var定义a:' + a);//可以输出a=10function events(){var a = 20;console.log('var定义a:' + a);//可以输出a=20}events();console.log('函数...原创 2019-07-16 16:10:03 · 195 阅读 · 0 评论 -
原生js放大镜效果
index.html页面<!DOCTYPE html><html lang="en" dir="ltr"><head> <meta charset="utf-8"> <title>放大镜</title> <script src="index.js"></script> &...原创 2019-07-16 17:29:25 · 146 阅读 · 0 评论 -
JS基础整理面试题
1、DOM和BOM的区别DOM:document object model;文档对象模型,提供操作页面元素的方法和属性BOM:browser object model;浏览器对象模型,提供一些属性和方法可以操作浏览器2、JS有几种引入方式1、行内式 直接在标签中写js代码2、内嵌式 可以有多个script标签,从上到下3、外联式 直接导入script标签,相对路径4、导入式 impo...转载 2019-07-12 14:32:02 · 221 阅读 · 0 评论 -
vue 单页面与多页面开发
原创 2019-08-13 15:30:04 · 460 阅读 · 0 评论 -
前端数据操作总结
src转imgfunction srctoimg(src){ return new Promise((reslove,reject)=>{ let img = new Image() img.onload = function(){ reslove(img) } img.onerror = function(err) { reje...转载 2019-09-19 10:52:45 · 444 阅读 · 0 评论 -
VUE使用cookie限制弹窗
// 利用cookie限制每天只弹窗一次// expires指定时间删除有效期24小时的cookieshowPopup(){ //==================== var s = document.cookie; if (s.indexOf('tdShow=1') != -1){ this.$nextTick(function(){ this....原创 2019-09-19 11:11:47 · 411 阅读 · 0 评论 -
Android studio 汉化
android入门实操链接: https://pan.baidu.com/s/149vgxTkQiKb5dUwrkyGoQw 提取码: n5ds 复制这段内容后打开百度网盘手机App,操作更方便哦原创 2019-09-19 14:04:18 · 664 阅读 · 2 评论 -
关于object-fit 使用
语法object-fit 属性由下列的值中的单独一个关键字来指定。取值contain被替换的内容将被缩放,以在填充元素的内容框时保持其宽高比。 整个对象在填充盒子的同时保留其长宽比,因此如果宽高比与框的宽高比不匹配,该对象将被添加“黑边”。cover被替换的内容在保持其宽高比的同时填充元素的整个内容框。如果对象的宽高比与内容框不相匹配,该对象将被剪裁以适应内容框。fill被替换...原创 2019-09-21 15:04:02 · 320 阅读 · 0 评论 -
ES7详解
ES7+ES8前言本篇文章主要介绍ES7+ES8的一些新功能,并结合ES6的一些API做出了相应的比较。ES71.Array.prototype.includes()includes()作用,是查找一个值在不在数组里,若是存在则返回true,不存在返回false.1.基本用法:[‘a’, ‘b’, ‘c’].includes(‘a’) // true[‘a’, ‘b’, ‘...转载 2019-06-19 09:17:09 · 1354 阅读 · 0 评论