04 2022 档案
摘要:记录下,都让让,我要开始灌水了... 字符 描述 \ 将下一个字符标记为一个特殊字符(File Format Escape,清单见本表)、或一个原义字符(Identity Escape,有^$()*+?.[{|共计12个)、或一个向后引用(backreferences)、或一个八进制转义符。例如,“
阅读全文
摘要:for…in 循环 for..in 循环也会迭代继承的属性。 let animal = { eats: true }; let rabbit = { jumps: true, __proto__: animal }; // Object.keys 只返回自己的 key alert(Object.ke
阅读全文
摘要:proto 和 [[Prototype]] 的区别 proto 是 [[Prototype]] 的因历史原因而留下来的 getter/setter 初学者常犯一个普遍的错误,就是不知道 proto 和 [[Prototype]] 的区别。 请注意,proto 与内部的 [[Prototype]] 不
阅读全文
摘要:闭包是个老生常谈的问题,所以写个记录下什么是闭包,闭包怎么来的,这里就从代码块开始说起。 代码块 {...} 花括号中声明的变量对于外部是不可见的。 其中函数 function () {...}; if(){...};for(let i;;){...};while{...} // 例 1 if (t
阅读全文
摘要:多层for循环跳出 使用break打断,指定位置out。 例如 out:for(;;){ break out; } // 方式一 指定位置 let i = 0; out1: for (;i < 4;) { i++; console.log('i', i); let j = 0; for(;j< 5;
阅读全文
摘要:Vuex页面刷新数据就清空了 因为JS数据保存在浏览器的堆栈内存里,所以一刷新浏览器就释放JS内存,把堆栈内存清空,所以就Vuex没了数据。 解决数据清空问题:使用本地内存,例如cookie,localStorage,sessionStorage保存数据。 Remark:sessinStorage
阅读全文
摘要:Chrome无痕浏览并不无痕 Chrome无痕模式下的工作机制会缓存cookie和网站记录。 所以这也是为什么有的网站在无痕模式下登录,关闭了窗口,重新打开该网站时不用重新登录的原因。 但是当退出无痕浏览时,就会清空当前无痕浏览模式中的: cookie和浏览记录。 表单中输入的信息。 网站授予的权限
阅读全文
摘要:面向对象编程 OOP 面向对象的三大特征: 封装、继承、多态。 封装:把某些相同的属性或者方法都写入一个函数里面。 继承:纵向的关系。 多态:横向并列的类型。 示例 // 封装 function Person(name, age) { this.name = name; this.age = age
阅读全文
摘要:new Vue后整个的流程 initProxy:作用域代理,拦截组件内访问其它组件的数据。 initLifecycle:建立父子组件关系,在当前组件实例上添加一些属性和生命周期标识。如[Math Processing Error]parent,parent,refs,$children,_isMou
阅读全文
摘要:在new Router({})配置 mode 参数,mode值可选hash或者History。 hash模式 hash(#)是URL的锚点,同时每一次改变#后的部分,都会在浏览器的访问历史中增加一个记录,使用”后退”按钮,就可以回到上一个位置;但不会对服务端请求数据。 使用hashchange()监
阅读全文
摘要:发送$emit('handleEven'),接收 @handle-even="handle" 失效原因 html 对大小写不敏感,并且 v-on 事件监听器中都会转成全小写(转成@handleeven),监听不到handleEven,所以不要使用驼峰式写法,推荐始终使用 kebab-case 的事件
阅读全文
摘要:工厂函数中返回一个 Promise,所以把 webpack 2 和 ES2015 语法加在一起,我们可以这样使用动态导入: Vue.component( 'async-webpack-example', // 这个动态导入会返回一个 `Promise` 对象。 () => import('./my-
阅读全文
摘要:在项目根目录中放置下列文件来指定环境变量: .env # 在所有的环境中被载入 .env.local # 在所有的环境中被载入,但会被 git 忽略 .env.[mode] # 只在指定的模式中被载入 .env.[mode].local # 只在指定的模式中被载入,但会被 git 忽略 一个环境文件
阅读全文
摘要:Vue引入CSS方式一般有三种 直接上代码 <template> <div class='test'> <img class='test_img' :src="require(`@/assets/img/cat.png`)" /> </div> </template> <script> /** *
阅读全文
摘要:nginx 压缩功能,可以减少文件的网络传输时间、同时也节省了所需要的带宽。比如高压缩比的html、js、json、css等,有时可以高达70%~90%,优化效果明显。 gzip压缩需要 前端 服务器同时配置 这里使用vue为例 // 首先安装插件 npm install --save-dev co
阅读全文
摘要:防抖和节流 首先两者的区别 防抖:N秒内只触发一次,如果N秒内再次触发则重新计算时间; 节流:N秒内只触发一次,如果N秒内再次触发也不会执行; 防抖的实现 这里使用Vue自定义指令的形式实现,核心代码是事件绑定那段 /** * @description Vue自定义指令 * @param argme
阅读全文
摘要:echarts控制台报错和100px宽度问题 起因echarts的父元素没有宽高或者设置了v-show; 解决思路 父元素没有宽高或者 需要在mounted钩子中开始绘制(这个时候Dom已渲染); 或者使用this.nextTick(()=>{console.log('需要做的操作')}); v-s
阅读全文