javascript
如花菇凉
爱工作,爱生活,爱学习,喜欢进步,喜欢分享的小美妹
展开
-
for与forEach的区别
对于它们的区别,我大概知道,但真让我说出个所以然来,我竟也说不出啥,也许,这就是为什么我成不了一个稍有本事的程序员的原因。感叹的话就到这里。进入正题。1.写法不同(众所周知) var menuEx = ['a','b',...] var m = 'b' for (let = 0; i < menuEx.length; i++) { if (m != menuEx[i]) continue return true }//以上可直接用数据的函数inc原创 2022-05-16 17:21:33 · 6129 阅读 · 3 评论 -
什么是loadsh
什么是loadsh这个概念真不知道?但是如果你说防抖和节流那是必须知道,用别的名字我反而不知是何东东。js call、apply、bind_如花菇凉的博客-CSDN博客========================还是来总结一下吧====================================作用防抖和节流都是用来防止高频率的js代码的执行防抖:以最后一个停止后超过多长时间触发// 防抖export function _debounce(fn, wait) {原创 2022-05-16 14:24:35 · 409 阅读 · 0 评论 -
redis与mysql的区别
1、在类型上mysql是关系型数据库,而redis是缓存数据库;2、在作用上mysql用于持久化的存储数据到硬盘,而redis用于存储使用较为频繁的数据到缓存中(内存);redis用于存储使用较为频繁的数据到缓存中,读取速度快3、mysql和redis的需求不同4.在速度上mysql用于持久化的存储数据到硬盘,功能强大,但是速度较慢。redis用于存储使用较为频繁的数据到缓存中,读取速度快,能够大大的提高运行效率,但是保存时间有限。MySQL和Redis的运行机制My原创 2022-05-16 11:35:23 · 2001 阅读 · 0 评论 -
require和import区别
相同点require 和 import,都是为了JS模块化使用。requirerequire是Commonjs的规范,node应用是由模块组成的,遵从commonjs的规范。用法// a.jsfunction test (args) { // body... console.log(args); } module.exports = { test}// b.jslet { test } = require('./a.js'); test('th..原创 2022-05-16 11:16:37 · 381 阅读 · 0 评论 -
Vue keep-alive后不能触发destroyed
<keep-alive :include="cachedViews"> <router-view :key="key" /> </keep-alive>当我们在项目中配置了keep-alive后,会发现页面关闭不能触发beforeDestroy。首先我们来看看keep-alive是什么东西keep-alive是Vue的内置组件,当它包裹动态组件时,会缓存不活动的组件实例,而不是销毁。它的作用不言而喻用来...原创 2022-05-13 11:04:53 · 3856 阅读 · 0 评论 -
浏览器兼容问题
90%都是IE浏览器不兼容,我说的。1.es6标准的新特征promise不兼容。如你使用的axios就用promise进行了封装,所以你肉眼见不到的代码也会因为封装引起了兼容问题。解决办法:见我前博客[vuex] vuex requires a Promise polyfill in this browser.报错_如花菇凉的博客-CSDN博客2.IE浏览器中日期调用getTime()返回NaN解决方法IE不支持yyyy-mm-dd的格式 需要先转成yyyyy/mm/dd 在取.原创 2022-05-09 11:17:29 · 174 阅读 · 0 评论 -
[vuex] vuex requires a Promise polyfill in this browser.报错
出现这个错误,我第一眼就知道是ES6新增特征之一promise在IE低版本浏览器不兼容的原因。知道了原理就好解决了。第一步: 安装 babel-polyfill 。 babel-polyfill可以模拟ES6使用的环境,可以使用ES6的所有新方法npm install --save babel-polyfill第二步: 在 webpack.base.conf中使用 entry: { //app: './src/main.js' app: ["babel-polyfill原创 2022-05-09 10:51:31 · 456 阅读 · 0 评论 -
JS手写实现call、apply、bind(超详细)
JS手写实现call、apply、bind(超详细)_CreatorRay的博客-CSDN博客_手写call这是篇良心文章 认真阅读不放过一个疑点 安排的明明白白转载 2022-05-08 14:23:43 · 149 阅读 · 0 评论 -
javascript this优先级
this 绑定的优先级:new > 显示绑定 > 隐式绑定 > 默认绑定。this 的4条绑定规则及优先级_zwkkkk1的博客-CSDN博客_this绑定优先级转载 2022-04-28 11:20:54 · 87 阅读 · 0 评论 -
javaScript中的this原理及6种常见使用场景
JavaScript中的this原理及6种常见使用场景_有鱼是只猫的博客-CSDN博客转载 2022-04-28 11:06:42 · 83 阅读 · 0 评论 -
一名【合格】前端工程师的自检清单
惭愧,面对这份自检清单,这些年都是白忙活了。人要有点自驱力,让自己强大,这样不管做什么事,都会心中自有丘壑。亡羊补牢,为时未晚。以后得闲,当自检,自勉。知识是要不断重复学习,实践,才属于自己,不然所行走之处,皆是三日而忘也,其义还不然也。一名【合格】前端工程师的自检清单 - 掘金...原创 2022-04-28 10:41:51 · 115 阅读 · 0 评论 -
instanceof的底层实现原理,手动实现一个instanceof
instanceof的底层实现原理,手动实现一个instanceof_靓 丶life的博客-CSDN博客_instanceof底层转载 2022-04-28 10:29:33 · 93 阅读 · 0 评论 -
Object.create()详解并实现继承
Object.create()详解并实现继承_Army-海军的博客-CSDN博客_object.create继承理解了一半,后继有时间再来学习。转载 2022-04-28 10:12:26 · 128 阅读 · 0 评论 -
new 一个对象时,会发生什么
操作符new 在执行时会做四件事情1,在内存中创建一个新的空对象;2,让this指向这个新的对象;3,执行构造函数里面的代码,给这个新对象添加属性和方法;4,返回这个新对象(所以构造函数里面不需要return);...原创 2022-04-28 10:01:42 · 1255 阅读 · 0 评论 -
JavaScript 隐式类型转换,一篇就够了
不论你是老兵新兵,自测 console.log('5'-2,'5'+2) console.log('homey' + + 'homey') console.log('10' + + '1') console.log('10' + + 1) let x = 3 console.log('5'+x-x) console.log('5'-x+x)如果你全对了,可以去看别的知识博客了,这块不需要再熟悉了,如果非要看,好吧,文字到处,众所周知,javascript是弱类的,转载 2022-04-27 12:10:04 · 261 阅读 · 0 评论 -
javascript中 new String 和 String的区别
当 String() 和运算符new 一起作为构造函数使用时,它返回一个新创建的 String 对象,存放的是字符串s或s的字符串表示。当不用 new 运算符调用 String() 时,它只把s转换成原始的字符串,并返回转换后的值。var s0 = 'hello';var s1 = new String(s0);var s2 = String(s0);console.log(s1 === s2); // falseconsole.log(s1 === s0); // false...转载 2022-04-27 11:09:31 · 1317 阅读 · 0 评论 -
var let const 有什么区别
varvar声明的变量可进行变量提升,let和const不会var可以重复声明var在非函数作用域中定义是挂在到window上的letlet声明的变量只在局部起作用let防止变量污染不可在声明const具有let的所有特征不可被改变如果使用const声明的是对象的话,是可以修改对象里面的值的...转载 2022-01-18 14:25:10 · 64 阅读 · 0 评论 -
五个拿来就能用的炫酷登录页面
五个拿来就能用的炫酷登录页面_键盘奏鸣曲的博客-CSDN博客转载 2022-04-23 18:08:23 · 758 阅读 · 0 评论 -
浏览器与node.js的区别
表面的区别浏览器和node.js都可以看作是JS的运行平台,浏览器是JS在客户端的运行时环境,而node.js是JS在服务端的运行环境。 JS运行在浏览器端,用于用户的交互效果。JS运行在node.js,用于服务器的操作。 JS需要浏览器的JS引擎进行解析执行,但是不同浏览器的JS引擎不同,存在兼容性问题。而node.js是基于 chrome v8引擎的运行时环境,无兼容性问题。 对于ECMAScript语法来说,在node.js和浏览器中都能运行。node.js无法使用DOM和BOM的操作,浏转载 2022-04-23 10:05:25 · 2530 阅读 · 0 评论 -
Node.js底层实现
对于Node.js的全面认识我还不够,只知道它用了谷歌的v8引擎,能做到高并发,(谷歌浏览器用的是v8引擎,这款浏览器对于脚本的执行性能是秒杀了其它浏览器)。下面我们来全面了解下。先放图从图中可以看出,node.js主要由三部分构成V8 javascript引擎Libuv线程池第三方库我们来看看Libuv线程池(核心)libuv使用异步,事件驱动的编程方式,核心是提供i/o的事件循环和异步回调。libuv的API包含有时间,非阻塞的网络,异步文件操作,子进程等等。(转载 2022-04-22 17:01:41 · 436 阅读 · 0 评论 -
闭包的实现原理和作用、以及内存泄露
闭包简单来说就是函数中的函数,也可以把它理解为一种现象,就是说一个函数要访问另外一个目标函数内部的变量,就要在目标函数中再定义一个函数(以此来把作用域链往下延长一段,目的就是为了利用js在找自由变量时,会沿着作用域链一级一级往上找的特点),并将这个定义的函数return出来,供外部使用。在实际开发中,闭包主要是用来封装变量,收敛权限。什么是闭包?(放代码)var value = 3 function bar(){ //外层函数声明的变量 var va转载 2022-04-22 11:44:17 · 527 阅读 · 0 评论 -
JavaScript中的this原理及6种常见使用场景详解
工欲善其事,必先利其器,,复习下this(看完如下,对于this的认识又清晰了点):this是JavaScript的一个关键字,函数调用时才会出现并确定;因为函数是在一定的环境中运行的,调用函数时肯定需要知道是[谁调用的]?就用到了this进行指向;那么this到底指向的是什么?this 既不指向函数自身,也不指函数的词法作用域,而是调用函数时的对象!使用场景(一)普通函数的调用,this指向的是Windowvar name = '卡卡';function cat(){ v转载 2022-04-22 11:18:08 · 819 阅读 · 0 评论 -
理解原型设计模式以及JavaScript中的原型规则
理解原型设计模式以及JavaScript中的原型规则 - 简书长见识了,温故而知新也。转载 2022-04-21 16:42:34 · 168 阅读 · 0 评论 -
Null和Undefined的区别
先看javascript的七种类型1.Undefined(基本类型)2.Null(基本类型)3.Boolean(基本类型)4.String(基本类型)5.Number(基本类型)6.Symbol(基本类型)7.Object(引用类型)可以看出,Undefined 和 Null 是 Javascript 中两种特殊的原始数据类型(Primary Type),它们都只有一个值,分别对应 undefined 和 null ,这两种不同类型的值,既有着不同的语义和场景,又表现出较转载 2022-04-21 16:14:00 · 1191 阅读 · 0 评论 -
重温 JS栈和堆
温故而知新也javascript中的堆和栈 - 简书转载 2022-04-21 12:01:56 · 62 阅读 · 0 评论 -
JS的数据类型
JavaScript中的每一个值都有它自己的类型,JavaScript规定了七种数据类型:1.Undefined(基本类型)2.Null(基本类型)3.Boolean(基本类型)4.String(基本类型)5.Number(基本类型)6.Symbol(基本类型)7.Object(引用类型)以上且听我细细道来(不管你从事了多少年的开发岗):undefined(变量,非关键词)// 声明了但未定义值let a;console.log(a); // undefin原创 2022-04-20 10:40:42 · 418 阅读 · 0 评论