自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 收藏
  • 关注

原创 预防XSS 正则表达式

var prevent= /^[^`~!#$%^&*+=\\|{};:"',/<>?]*$/;returnprevent.test(str);// 简单粗暴

2019-06-15 17:16:05 3342

原创 Promise实现ajax简单应用

Promise是异步编程的一种解决方案。  比传统的解决方案——————回调函数和事件,Promise更合理和更强大。在ES6规范中,Promise是提供的一个构造函数,可以new Promise()对象Promise对象代表一个异步操作,Promise有三种状态:pending(进行中)fulfilled(已成功)rejected(已失败)Promise构造函数接...

2018-09-22 16:06:31 1196 1

原创 Mongoose中的查找

   使用Mongoose来查找文档很容易,有以下3种方法可供选择、find()findById()findOne()1.find()  第一个参数表示查询条件,第二个参数用于控制返回的字段,第三个参数用于配置查询参数,第四个参数是回调函数,回调函数的形式为function(err,docs){}Model.find(conditions, [projection...

2018-09-20 16:22:00 1950

原创 mongoose中的文档中的插入

文档新增文档新增有三种方法,一种是使用上面介绍过的文档的save()方法,另一种是使用模型model的create()方法,最后一种是模型model的insertMany()方法1.save()  [注意]回调函数可以省略save([options], [options.safe], [options.validateBeforeSave], [fn])  新建{age:10...

2018-09-20 16:13:15 2086

原创 mongoose中的Schema和Model

SchemaSchema主要用于定义MongoDB中集合Collection里文档document的结构,可以理解为mongoose对表结构的定义(不仅仅可以定义文档的结构和属性,还可以定义文档的实例方法、静态模型方法、复合索引等),每个schema会映射到mongodb中的一个collection,schema不具备操作数据库的能力 定义Schema非常简单,指定字段名和类型即可,支...

2018-09-20 16:10:31 6386

原创 Mongoose起步

Mongoose是在node.js环境下对mongodb进行便捷操作的对象模型工具mongoose安装  安装nodejs和mongodb之后 ,使用npm来安装mongoosenpm install mongoose --save安装成功后,就可以通过 require('mongoose') 来使用connectconnect 用于创建数据库连接mongoose...

2018-09-17 23:35:47 237

转载 JavaScript深拷贝实现

type函数首先我们要实现一个getType函数对元素进行类型判断,关于元素的类型判断,可以参考我另一篇博文 js中typeof和instanceof详解 ,这里用一个更简便的方法,直接调用Object.prototype.toString 方法。 function getType(obj){ //tostring会返回对应不同的标签的构造函数 var t...

2018-09-17 09:50:18 172

原创 React开发笔记(三)注册页面reducer配置

user.redux.js代码注意axios是异步的,要传回调函数dispatch动作import axios from 'axios';const REGISTER_SUCCESS = 'REGISTER_SUCCESS'; //actionTypeconst ERROR_MESSAGE = 'ERROR_MESSAGE'; //actionTypeconst initSt...

2018-09-17 00:14:55 277

原创 React开发笔记(二)转化路由组件

react-router-dom 为我们提供了很强大方便的路由模块。react-router-dom提供了BrowserRouter, Route, Link等api,我们可以通过dom的事件控制路由。例如点击一个按钮进行跳转,大多数情况下我们是这种情况,所以在开发过程中,我们更多是使用React-router-dom。安装很简单npm i react-router-dom --save,安装...

2018-09-15 23:51:09 649

原创 CVTE校招笔试

CVTE校招挺注重基础,并且很多ES6语法1.变量提升 2.考察call()  apply bind()   和ES6双冒号绑定符::     fun::bun    相当于  bun.bind(fun)      fun::bun()   相当于 bun.apply(fun);3树结构4栈结构,出入栈5.事件冒泡6.事件绑定7.异步setTimeout()...

2018-09-14 20:42:15 9830

原创 服务器端渲染和客户端渲染

什么是服务器端渲染和客户端渲染?    互联网早期,用户使用浏览器浏览的都是一些没有复杂逻辑的、简单的页面,这些页面都是在后端将html拼接好的然后将之返回给前端完整的html文件,浏览器拿到这个html文件之后就可以直接解析展示了,而这也就是所谓的服务器端渲染了。而随着前端页面的复杂性提高,前端就不仅仅是普通的页面展示了,而可能添加了更多功能性的组件,复杂性更大,另外,彼时ajax的兴起,使...

2018-09-14 08:25:06 401 1

转载 理解 JavaScript 的 async/await

随着 Node 7 的发布,越来越多的人开始研究据说是异步编程终级解决方案的 async/await。我第一次看到这组关键字并不是在 JavaScript 语言里,而是在 c# 5.0 的语法中。C# 的 async/await 需要在 .NET Framework 4.5 以上的版本中使用,因此我还很悲伤了一阵——为了要兼容 XP 系统,我们开发的软件不能使用高于 4.0 版本的 .NET Fr...

2018-09-13 16:22:40 110

原创 KOA中的async和await

async是‘异步’的简写,await 可以认为是 ‘ async wait ’的简写。 async可以用于声明一个function是异步的,而await用于等待一个异步方法执行完成简单理解:  async    可以让方法变成异步。async function testAsync(){ return 'hello async';}const result...

2018-09-12 22:00:44 2897

原创 封装mongoDB的数据操作

原生MongoDB+express路由写起来代码会非常冗余。比如:登录验证的路由  会这么写app.post('/doLogin',function(req,res){ MongoClient.connect(DBurl,(err,db)=&gt;{ if(err){ console.log(err); re...

2018-09-11 17:18:34 361 1

原创 ES6学习笔记—Set的用法

ES6 提供了新的数据结构 Set。它类似于数组,但是成员的值都是唯一的,没有重复的值。Set 本身是一个构造函数,用来生成 Set 数据结构。const s = new Set();[2, 3, 5, 4, 5, 2, 2].forEach(x =&gt; s.add(x));for (let i of s) { console.log(i);}// 2 3 5 4...

2018-09-10 23:03:34 147 1

原创 React开发笔记(一)

----------------------1.React 环境搭建npm install react-create-app -g  //全局安装脚手架create-react-app filename // 创建项目并安装依赖ls 显示当前目录的结构README.md    看我文档(介绍)node_modules 安装的第三方依赖包package.json  表示项目依赖 s...

2018-09-05 23:58:40 170

原创 MongoDB建立索引与explain命令

一句话概括索引: 添加索引能加快查找速度。MongoDB的索引几乎与传统关系型数据库索引一模一样。(自我觉得建立起来非常简单)1.建立索引:    db.user.ensureIndex( { "uname": 1 } )    对 user 集合(collection)的 uname  列  建立索引。2.获取当前集合的所有索引     db.user.getIndexe...

2018-09-05 00:05:24 341 1

原创 ASCII 和 unicode 和UTF-8区别

      之前对文件编码是一头雾水,还一直误以为UTF-8是中文编码,因为写网页时如果不采用utf-8编码的话,中文是乱码的。但是原因并不是如此。下面总计一下 ASCII  和 Unicode 和 UTF-8  三种编码格式区别。1.ASCII我们知道,计算机内部,所有信息最终都是一个二进制值。每一个二进制位(bit)有0和1两种状态,因此八个二进制位就可以组合出256种状态,这被称...

2018-09-03 15:06:27 202 1

原创 express的cookie-parser和express-session中间件的使用

这里简单介绍一下cookie 和 session 的区别cookie 存在于客户端,session存在于服务器端cookie一般用来记录用户的登录信息,随请求一起发送到服务器端,cookie安全性相对于session较低些,cookie可以被截取和欺骗服务器。session是服务器记录用户状态信息的技术,当客户端首次请求服务器时,服务器会为该客户端创建一个唯一的对象,称之为sess...

2018-09-01 23:18:32 1335 2

原创 Node.JS能做什么?

              作为一名JS的粉忠实粉丝,虽然JS并没有JAVA的生态圈这么大,但是JavaScript从客户端脚本程序跻身服务器端,这让我们要重视一下它,JavaScript它在慢慢崛起,我们要换一种眼光去学习它。 Node.js是什么?Node.js本质上是一个JavaScript的运行环境。基于Google的V8引擎,实际上,是从Chrome上抠下的V8引...

2018-08-31 10:43:50 18634 8

原创 多益网络校招前端面经

前几天刚经历多益前端提前批校招,本来觉得笔试应该凉了,但是最后居然过了笔试,顺利进入面试,下面讲讲我记得经过吧。笔试阶段:   笔试过去半个月了,零零星星记得    JS基础是要有的,字符串函数 split()  还有数组一些api , reverse()  join('') 这些要熟悉    正则表达式!是必考,反正我做的校招笔试题都会有问到,不直接问都会应用到。多益问的是写出手...

2018-08-29 15:08:51 11188 2

原创 自己封装一个类express路由框架

今天用了Node封装一个简单的类似express框架的路由首先先看看 没封装 之前的server路由代码const http = require('http');const url = require('url');const ejs = require('ejs');var server = http.createServer((req,res)=&gt;{ pat...

2018-08-28 20:31:36 8337

原创 用原生Node实现一个静态web服务器

 之前一直用过Apache nginx等静态web服务器。但强大的node.js本身就能作为独立的web服务器,不依赖与Apache  nginx下面我们看看怎么用Node去写一个静态服务器吧首先,先来看看我的项目结构吧                 主要的服务器入口文件是  server.js (里面写 Node 服务器代码)其次,根目录还有一些测试用的  inde...

2018-08-27 14:42:58 7552 4

原创 总结一下面试常被问的HTTP协议

http和https的区别?https的具体实现原理是什么,是怎么实现安全传输的       HTTP协议传输的数据都是未加密的,也就是明文的,因此使用HTTP协议传输隐私信息非常不安全。http是无状态的,端口为80;      为了保证这些隐私数据能加密传输,于是网景公司设计了SSL,协议用于对HTTP协议传输的数据进行加密,从而就诞生了HTTPS。端口号443,       1客户...

2018-07-27 23:20:42 1186 2

原创 如何从基础上 优化网站

(1)域名解析    尽可能减少域名解析次数——减少跨站外部资源的引用(2)创建连接    努力减少连接创建次数——启用持久连接避免重复连接(连接要三次握手,断开要四次挥手)(3)发送请求    尽力减少请求次数——合理设置缓存、资源合并(精灵图(把图片合并),样式内嵌(不用请求CSS))(4)等待响应    提高服务器端运行速度——提高数据运算及查询速度(后端算法)(5)接收响应    尽可能减...

2018-07-12 10:14:53 151 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除