![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
web前端
文章平均质量分 67
魍-
这个作者很懒,什么都没留下…
展开
-
JavaScript基本语法
数据类型js不区分证书和浮点数,统一用Number表示 NaN表示Not a Number。当无法计算结果是用NaN表示Infinity表示无限大,当数值超过了JavaScript的Number所能表示的最大值时,就表示为Infinity字符串是以单引号’或双引号”括起来的任意文本布尔值和布尔代数的表示完全一致++==比较,它会自动转换数据类型再比较,很多时候,会得到非常诡异的结果;++原创 2017-08-03 16:51:04 · 214 阅读 · 0 评论 -
JavaScript中的内存泄露
一. 定义js如同其他高级语言一样都有垃圾回收机制,会周期性的检查之前分配的内存是否可达,帮助开发者管理内存。对不可达的内存通过算法确定、标记并适时回收。而内存泄露则可以理解为当应用程序不再需要占用内存时,由于某些原因操作系统未回收其内存。二. 堆?栈?队列?2.1 任务队列由于js是单线程,所以所有的任务都需要排队。学过操作系统的都知道单线程最大的浪费就是输入输出时的等待,所以J...原创 2019-03-06 11:16:44 · 164 阅读 · 0 评论 -
JavaScript中的作用域
一.词法作用域1.1 LHS和RHS若查找的目的是对变量进行赋值则引擎会使用LHS查询若目的是获取变量的值则使用LHS查询如题,LHS查询的目的是对变量赋值,则可以理解为寻找变量的容器本身而RHS查询则应理解为retrieve his source value(取其源值)我们可以简单的理解为LHS是赋值语句左边部分,注重的是变量本身。而RHS则是赋值语句右边部分,注重的是所要赋给...原创 2019-03-03 21:16:13 · 203 阅读 · 0 评论 -
JavaScript中的闭包
其实这个专题之前就写过一些东西,不过当时属实是个小老弟,非常生涩而且里边的东西都是复制粘贴来的。想表达的东西很多但是都没有表达清楚。所以面临面试的我打算重新总结一番,当作一个回顾吧一.是什么什么是闭包?MDN:包是函数和生命该函数的词法环境的组合Tyler McGinnis:子函数在其父级变量环境上“关闭”的概念w3cschool:词法表示包括不被计算的变量的函数。也就是说,函...原创 2019-03-03 22:05:36 · 145 阅读 · 0 评论 -
JavaScript中的this解析
一.默认绑定独立函数调用时遵循默认绑定的原则。一般情况下若无其他规则出现则默认将this绑定到全局对象上。function foo(){ var a = 3; console.log(this.a)}var a = 2;foo() // 2二.隐式绑定若调用位置有上下文对象就遵循隐式绑定(如example.foo())function foo(){ console.log(...原创 2019-03-04 17:06:53 · 144 阅读 · 0 评论 -
JavaScript中call&&apply详解(番外)
call和apply均用于this值绑定,区别在于参数列表Function.apply(thisObj, args)Function.call(thisObj, [param1[, param2 [, param3 [... [,paramN]]]]])前者传入参数列表(arguments),后者挨个向里边放参数call、apply方法可以将一个函数的对象上下文从出事的上下文改编为由t...原创 2019-03-04 17:20:33 · 223 阅读 · 0 评论 -
Vue中的emit、on和v-on
由于本人才疏学浅本文章参考了诸多大神的想法,会在文末贴上原文地址一. $on && $ emit$emit(eventName, [...args]):触发事件$on(eventName, callBack):监听事件如果把Vue看成一个家庭(相当于一个单独的components),女主人一直在家里指派($emit)男人做事,而男人则一直监听($on)着女士的指派($...原创 2019-03-07 22:03:15 · 2298 阅读 · 0 评论 -
Vuex初体验
一. 全局引入main.js中引入import Vuex from 'vuexVue.use(Vuex)new Vue({ el: '#app', router, components:{...}, template: '...', store})二. 创建state 用来数据共享数据存储mutation 用来注册改变数据状态getters 用来对共享数据进行过...原创 2019-03-11 20:36:55 · 134 阅读 · 0 评论 -
JavaScript中的深浅拷贝
title: JavaScript之深浅拷贝一. 前言首先咱们先理一下这玩意儿的概念浅拷贝:将对象的各个属性进行依次复制,并不会进行递归复制,也就是说只会赋值目标对象的第一层属性。深拷贝:递归拷贝目标对象的所有属性。咱们可以这么理解:浅拷贝就像人口普查,只往上看这一代。深拷贝则是入党审核,你家庭案底都得查得清清楚楚。那么咱们正式开始二. 应用场景当我们需要大量复制某些对象...原创 2019-03-20 20:55:20 · 162 阅读 · 0 评论 -
我所了解的跨域
title: 我所了解的跨域一. 什么是跨域由于浏览器的同源策略限制,导致了我们无法跨域获取数据。呸,是获取数据之后浏览器出于安全考虑将信息拦截。那么什么是同源策略?同源策略限制了从同一个源加载的文档或脚本如何与来自另一个源的资源进行交互。这是一个用于隔离潜在恶意文件的重要安全机制。1.1 同源策略的用处1.1.1 接口请求由于服务端Server会给登陆过的你发送一个co...原创 2019-03-20 20:56:25 · 311 阅读 · 0 评论 -
JavaScript中的事件循环&消息队列
title: JavaScript中的事件循环&消息队列作为一门设计初衷为了处理浏览器网页交互(DOM操作、UI动画等)的语言,JavaScript只能被设计为单线程(否则多个线程同时处理DOM那将会造成混乱)。可是写过JavaScript代码的人都用过定时器、ajax、事件绑定等。如果是单线程那岂不是无法完成这些异步请求?一. 前言其实,JavaScript单线程指的是浏览器...原创 2019-03-20 21:00:32 · 2586 阅读 · 3 评论 -
ES6中的Symbol
title: ES6中的SymbolSymbol函数前不能使用new命令,否则会报错。这是因为生成的 Symbol 是一个原始类型的值,不是对象。也就是说,由于 Symbol 值不是对象,所以不能添加属性。基本上,它是一种类似于字符串的数据类型。Symbol函数可以接受一个字符串作为参数,表示对 Symbol 实例的描述,主要是为了在控制台显示,或者转为字符串时,比较容易区分。...原创 2019-03-20 21:03:42 · 379 阅读 · 0 评论 -
ES6中的Promise
title: ES6中的Promise一. 提要为解决传统异步所造成的回调地狱,社区提出了Promise方案并最终将其写入了语言标准。其用法如其名——承诺:即非立即兑现,通过then方法调用其状态,通过catch捕获错误。二. 状态Pending:进行中Fulfilled:已成功Rejected:已失败Promise的另一个特性是无法改变。正如其英文寓意一样,一旦状态改变就...原创 2019-03-20 21:04:26 · 403 阅读 · 0 评论 -
Vue项目中关于axios跨域的设置
在config文件夹中的index.js文件我们要将proxtTable选项设置。参数如下proxyTable: { '/api': { target: 'http://192.168.1.xxx:80', // 数据接口 changeOrigin: true, // 跨域 secure: false, pathRewrite: {...原创 2018-12-03 22:16:57 · 216 阅读 · 0 评论 -
Node连接mysql之——登陆验证(1)
写了这么久前端忽然想看一下后台大佬的世界,所以就看了一下nodeJS中的express框架和koa。不过今天咱们不说这玩意儿,而是讲一下我们最重要的东西:数据库的连接要用到数据库当然少不了我们稳定可靠的mysql咯,我们要试着做一个验证登陆的东西,所以做如下配置const express = require('express');const session = require('expre...原创 2018-12-05 20:03:21 · 1094 阅读 · 2 评论 -
JavaScript函数专题
函数定义和调用定义方法 function 函数名(形参){…}var 变量名 = function(形参){…};其中后者为匿名函数,实质为将这个匿名函数赋值给了变量。++注意末尾有分号++!注意,函数体内部的语句在执行时,一旦执行到return时,函数就执行完毕,并将结果返回。如果没有return语句,函数执行完毕后也会返回结果,只是结果为undefined函数对传入的实参多少并无要求原创 2017-08-09 22:49:57 · 312 阅读 · 0 评论 -
JavaScript作用域专题
学习过程中随手的一百度发现案坑其实也不少,而且好多在面试里也会用得到……好吧再加一个专题总结一下,就当是为以后的学习打基础了首先咱们还是说一下作用域吧作用域链图中很明确的表示出:在变量解析过程中++首先查找局部的作用域++,++然后查找上层作用域++。不好懂?没关系我们从两段代码开始var i=10; function a() { alert(i); }; a()转载 2017-08-15 22:07:12 · 189 阅读 · 0 评论 -
全面解析JavaScript里的循环方法之forEach,for-in,for-of
JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。JavaScript诞生已经有20多年了,我们一直使用的用来循环一个数组的方法是这样的:for (var index = 0; i转载 2017-10-21 21:19:39 · 312 阅读 · 0 评论 -
DOM专题
众所周知js具有改写html的强大功能,而由于html文档被浏览器解析后就是一棵DOM树,要改变HTML的结构,就需要通过JavaScript来操作DOM始终记住DOM是一个树形结构。操作一个DOM节点实际上就是这么几个操作: 更新:更新该DOM节点的内容,相当于更新了该DOM节点表示的HTML的内容;遍历:遍历该DOM节点下的子节点,以便进行进一步操作;添加:在该DOM节点下新增一个子节点原创 2017-10-25 17:22:28 · 372 阅读 · 1 评论 -
JavaScript中this指向问题
this是在运行时绑定的。函数调用方式的不同就可能使this所绑定的对象不同一.几种绑定规则Ⅰ.默认绑定一般情况下,若无其他规则出现则默认将this绑定到全局对象上function foo(){ var a = 3; console.log(a);}var a = 2;foo(); //2//foo()在调用时使用不带任何修饰的函...转载 2018-05-26 17:21:33 · 547 阅读 · 0 评论 -
Js中的对象&实例
对象StringtoString():返回字符串的数组表示(就个人理解toLocaleStrig()和toString()无明显差别)valueOf():返回 Boolean 对象的原始值charAt()返回在指定位置的字符concat()连接字符串indexOf()检索字符串lastIndexOf()从后向前搜索字符串match()找到一个或多个正则表达式的匹配rep...原创 2018-06-09 14:30:26 · 1727 阅读 · 2 评论 -
js中的闭包问题(持续更新)
闭包,是一个拥有许多变量和绑定了这些变量的环境的表达式(通常是一个函数),因而这些变量也是该表达式的一部分。好啦说人话: “我的理解是,闭包就是能够读取其他函数内部变量的函数。”——–阮一峰相较官方文档而言阮一峰老师直接的多。不过由于js语言的特殊性使得不像其他面向对象语言一样拥有明确的类与对象的关系以及特殊的作用域,闭包的作用也就尤为重要了不过在此之前我们需要做一些铺垫。++不...原创 2018-06-20 00:13:38 · 315 阅读 · 0 评论 -
封装MongoDB类库
学习Koa的时候遇到了mongodb,虽然我的电脑出了点问题不知为什么安装不上,但是看到视频教学感觉还是非常有用的,在此做一下总结var MongoDB = require('mongodb');var MongoClient = MongoDB.MongoClient;//用户Id必须以此属性格式返回。const ObjectID = MongoDB.ObjectID;var Conf...原创 2018-10-23 23:09:03 · 198 阅读 · 2 评论 -
了解ES6中的Iterator迭代器
写在前面迭代器是带有特殊接口的对象,用以为不同的数据结构提供统一的访问机制由于目前ES6版本有4种可遍历的“集合”(Array,Object,Map,Set),所以拥有Iterator之后一切都变的简单了许多。我们只需要为其部署Iterator接口即可遍历便利过程创建一个只针对想,指向当前数据结构的起始位置第一次调用只针对象的next方法,将指针指向数据结构的第一个成员。。。。直至...原创 2018-11-01 11:27:26 · 180 阅读 · 0 评论 -
CSS3之rem
近些年来随着微信小程序的蓬勃发展,原本适用于PC端的字体型号px好像不再那么的万金油了,尤其是面对不同的手机屏幕,px的适配性显得过于呆板。之前的一些大厂选用了通用型号的屏幕适配,多余的部分则用留白来填补。这样虽然让Plus型号得以施展,但是一段留白总归看的诸位土豪心中不爽。随着CSS的发展,rem横空出世解决了这一难题为了大家的时间,我们采用我初中答政治题的方式,分“是什么”,“为什么”,“怎...转载 2018-11-03 20:52:57 · 2144 阅读 · 0 评论 -
聊聊jquery的ajax
jq的ajax方法封装了原生的阿贾克斯请求,让用户得以更加方便的使用。我们来看一下双方的对比html部分:<form> <input type="text" name="username" id="username"><br> <input type="password" name="password&q原创 2018-11-19 22:51:19 · 169 阅读 · 0 评论 -
Vuex初体验
写在前面作为一个Vue用户,大家想必已经厌倦了props、bus的复杂和繁琐。所以今天我们来体会一下Vuex,在降低耦合度的同时还增加了代码的可维护性。可谓是一举两得。同时由于其简单的语法和较少的内容,也适合大多数使用vue-cli的童鞋准备在安装之前建议你们去chrome商城中找一个名为“Vue.js devtools”的插件,可以跟踪数据的变化。开始state使用Vuex的时候,我...原创 2018-12-01 10:17:36 · 138 阅读 · 0 评论 -
Vue-Router杂记
在vue路由中有许多容易混淆的概念,以及一些相近词语,今天在此总结一下router和router和router和route在vue组件中,每个组件都会拥有自己的router属性和router属性和router属性和route属性。至于区别嘛……router属性中存放的是方法route属性中存放的是属性和正常写法中,一层路径(/xxx)对应一个router-view,对应显示...原创 2018-12-01 10:22:20 · 148 阅读 · 0 评论 -
Vue中的组件间通讯
之前也写过关于组建通讯的文章,但主要是讲父子组件之间的通讯。此文章当作总结,以备日后复习一. 父子组件间通讯1.1 单向传递 propsVue中我们可以通过props完成父向子单向传递数据的任务。如此即可保证子组件无法随意更改父组件的数据,保证安全性&lt;!-- 父组件 --&gt;&lt;template&gt; &lt;div&gt; &lt;ChildCom原创 2019-03-12 23:21:14 · 165 阅读 · 0 评论