自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Node开发(十)加密和jwt

一、加密Nodejs内置crypto模块来实现的加密功能,例如:md5,sha1,AES和RSA等加密,均可以通过该模块实现1)引入模块let crypto=require('crypto');//引入加密模块2)调用常见方法实现加密createHamc(算法,秘钥)创建并返回一个hmac对象,也就是通过给定的加密算法和密钥生成的加密图谱update(data) 通过提供的数据来更新对象digest(encoding) 对数据进行加密并且指定数据的编码 ,例如:binary/ba

2020-09-27 15:38:12 339

原创 Node开发(九)Node入门

一、进制的概念1)计算机如何认识字母:通过ascii码对照表2)计算机怎么识别汉字:utf8编码3)ascii使用的是8个二进制位来表示,问,3个或4个二进制位行不行?答:不行,因为3个二进制位只能表示8个状态,4个二进制位只能表示16个状态,都不足以存储128。个字符。8个二进制位可以有256中变化,足以存储128个字符;8个进制位是计算机中用于表示存储的最小单元——字节(byte)1PB = 1024TB1TB = 1024GB1GB = 1024MB1MB = 1024KB

2020-09-26 15:10:27 372

原创 Node开发(八)Class类

在ES5使用构造函数来创建对象(一直在使用函数来模拟对象)在ES6中,引入class关键字,可以使用class来定义类一、Class简介1.什么是类?类是用来描述具有一些共同的特性和行为的事物类由属性和方法组成2.什么是对象?对象是类的实例3.class class Student { constructor(no, name, age) { this.no = no; this.name = name;

2020-09-26 15:02:59 2891

原创 Node开发(七)async和await

ES2017年引入async函数,能够使异步操作更加简单。什么是async函数?async函数是generator函数的语法糖。async函数就是去掉generator函数中*,替换为了asyncasync函数经常搭配await语句使用。await其实就是替代yied表达式.aync和await,就是一种基于promise的generator的语法糖。一般使用async…await来优化promise的使用。一、async1)async是用来修饰函数的2)修饰后的函数,变成了异步函数;这个函

2020-09-26 14:59:17 913

原创 Node开发(六)Promise

Promise是一种异步编程的解决方案。现在经常使用回调函数来解决异步通信(传参)的问题,若回调函数层次过深,就会出现回调地狱问题(逻辑不够清晰,可维护性差)Promise是一个对象,通过new Promise来创建对象1.创建Promise对象1)Promise对象需要接收一个函数作为参数,这个作为参数的函数有两个参数,resolve,reject2)resolve和reject本身也是函数let p=new Promise((resolve,reject)=>{ });P

2020-09-26 14:48:26 364

原创 Node开发(五)Iterator和generator

一、IteratorJavaScript到目前为止有四种集合类型,数组、对象、Map、Set。这四种集合的遍历方案是不一致的,数组、Map和Set 可以使用forEach 和for循环 来进行遍历,对象需要使用for …in 遍历。若数据存储过程中,不是使用单一的集合而是使用这几种的交叉来完成的,例如:数组中有对象,对象中Set,Set中有map…,这时,就不能使用统一的遍历方式来进行数据遍历。能不能提供一种统一的遍历方案,来对四种集合进行遍历?Iterator(遍历器、迭代器),它的诞生就是为

2020-09-26 14:39:19 155

原创 Node开发(四)Symbol、Set和Map

一、Symbol(了解)Symbol是ES6中新增的一种数据类型(原始数据类型)常见的七种数据类型:number、string、boolean、null、undefined、Object、SymbolSymbol是一个独一无二的值也就是说使用同一个代码产生的两个symbol类型也是不相同的let s=Symbol();console.log(s);//Symbol()let s1=Symbol();console.log(s==s1);//false 两个值不想等 独一无二Symb

2020-09-26 14:16:29 713

原创 Node开发(三)ES6扩展

一、字符串扩展1.模板字符串,允许通过使用反引号来定义字符串 ``模板字符串的特性:1)支持换行 2)内部支持js表达式 在${}中,可以支持js表达式//使用es6编辑页面//将后台数据展示到页面的ul中var oUl = document.querySelector('ul');let { data } = obj;//解构data.forEach(function (item) { // console.log(item); oUl.innerHTML += `

2020-09-26 14:00:33 155

原创 Node开发(二)解构赋值

在ES6中,允许通过一定的模式,将对象和数组中的内容提取出来,赋值给变量,这个过程称为解构赋值。一、解构赋值的概念回顾一下ES5中是如何提取数组的数据ES6中的解构赋值,核心:模式匹配1)解构赋值,需要有一个=(赋值符号)2)解构赋值的=两变的模式是一致(都是对象,或都是数组)3)=的右边是要被解构的值,左边是变量解构的分类:1)完全解构2)不完全解构(解构的缺省)3)解构失败4)解构的默认值二、数组的解构赋值数组结构的特点:1.数据有序 2. 数组中的元素有索引 3. 数组是一个

2020-09-26 11:24:42 623

原创 Node开发(一)let和const

一、ES6简介ES6是ECMAScript6 的简写ES52015年发布了ES6,ES20152016 ES20162017 ES20172018 ES20182019 ES20192020 ES2020…1.ES与js的区别?ES是JS的规格,js是ES的实现2.ES5与ES6的关系?ES6是下一代的JavaScript,新一代的JavaScriptES6相比于ES5的语法更加的简洁,严谨ES6相比于ES5,它并没有修改ES5的语法(全方位兼容ES5),新

2020-09-26 11:15:56 503

原创 JavaScript(十九) 动画与插件

动画与插件一、动画1.三组基础动画动画的参数:总共支持三个参数参数1:speed 数字(毫秒) slow normal fast参数2:动画效果 默认 swing 可选 :linear参数3:回调函数 动画执行完毕的回调函数1)显示/隐藏show()Hide()2)展开/折叠slideDown()slideUp()slideToggle()3)淡入淡出fadeIn()fadeOut()fadeToggle()fadeTo() 更改不透明度到

2020-09-26 11:03:04 192

原创 JavaScript(十八)jQuery进阶

jQuery进阶一、类的操作addClass() 添加(追加)类removeClass() 移除类toggleClass() 切换$('li').click(function(){ // $(this).addClass('on').siblings().removeClass('on'); $('li').first().toggleClass('on');//切换});二、常见的操作each() 遍历Index() 获取指定元素在兄弟节点中的位

2020-09-26 11:02:48 8468

原创 JavaScript(十七)jQuery初识

jQuery初识一、jQuery简介jQuery是一个非常优秀的JavaScript库。是一个开源的库jQuery的宗旨:write less , do morejQuery自身具有非常多的优秀的特点:语法简介,功能强大,开源。市面有非常多的基于jQuery的插件二、jQuery的优点链式操作隐式迭代良好兼容性…三、使用jQuery两种使用方案:1.引入远程的2.引入本地下载好的库关于jQuery版本问题:1.x 支持IE低版本2.x 不支持IE低版本3

2020-09-26 11:02:37 1215

原创 JavaScript(十六)web存储和移动端事件

Web存储1.web存储简介在H5中,新增了两种能够在客户端进行数据存储的技术localStorage 永久性存储sessionStorage 临时性存储将数据以键值对的形式存储在客户端只能存储字符串或者数字2.localStorage 永久性存储属性:length 数据的个数方法:setItem(key,value) 添加数据key: 要存储的数据的名称value: 要存储的值getItem(key) 根据key获取数据clear() 清空所有的数

2020-09-26 11:01:58 189

原创 JavaScript(十五) 闭包和表单 Ajax请求

闭包和表单一、闭包闭包就是能够读取其它函数中变量的函数(并且将这个函数返回)。本质上,闭包就是将函数内和函数外连接起来的一个桥梁。 function fn(){ var a=0; return function(){ var b=a++; console.log(a,b); // console.log(a++);// 0 a=1 }; } var fnx=f

2020-09-26 10:59:04 192

原创 JavaScript(十四 )继承 正则表达式

继承1.对象冒充继承通过call放修改父类的构造函数中this的指向,来完成对子类添加属性示例:人 学生 小学生 function Person(name, age) { this.name = name; this.age = age; this.say=function(){ console.log('哈哈哈哈'); } } Person.prototype.run = functi

2020-09-26 10:58:34 124

原创 JavaScript(十三)面向对象

一、面向对象概念面向过程(函数式):会把整个开发分为若干的步骤,一步一步的去开发完成功能。不理于多人协作开发面向对象:会把一切的数据都看做对象对象:属性 变量 特点,特性 名词方法 函数 功能 动词实例:实例和对象之间的关系,人和你的关系。类:es5中没有类(class) 类是对象的模板面向对象特点:继承 子类(派生类) 父类(基类,超类)多态封装JavaScript也是一种面向对象的编程语言。二、对象的创建1.Ja

2020-09-26 10:58:26 85

原创 JavaScript(十二)常见js特效

一、拖拽效果1.拖拽效果的思路1)鼠标按下,不能松开2)鼠标在页面中移动,物体随着鼠标移动3)鼠标松开(抬起),停止移动var o = document.getElementsByTagName('div')[0]; //鼠标按下事件 o.onmousedown = function (e) { e = e || window.event; //计算鼠标相对于div的位置 var disLeft

2020-09-26 10:58:12 4157

原创 JavaScript(十一)事件

一、事件基础-事件函数与事件对象1.事件函数事件触发的时候,要执行的函数2.事件对象事件触发时,浏览器会将与事件相关的信息包装为对象传递(window.event)事件对象包含一些常见的属性:事件名称,事件目标对象,鼠标位置信息等…事件对象的属性:target:触发事件的对象type:事件的类型clientX,clinetY 鼠标相对于屏幕的位置pageX,pageY 鼠标相对于页面的位置二、事件的绑定与取消1.事件的绑定以前: 对象.事件名弊端:若为同一个对象添加多个同名事

2020-09-26 10:58:00 159

原创 JavaScript(十) BOM

BOM,browser object model 浏览器对象模型。用来实现js与浏览器的交互BOM的核心对象时window,是Global对象(全局对象,顶级对象)。全局变量、函数、对象都会自动成为window对象的属性、方法。document对象也是window对象的属性一、BOM1.window对象的方法:alert() 警告框prompt() 输入框 确定按钮 输入框的内 取消按钮 nullconfirm() 确认框 确定 true 取消 false

2020-09-26 10:57:09 85

原创 JavaScript(九)DOM

一、概念:DOM:文档对象模型在JavaScript中,加载HTML页面时会将HTML页面描绘成一个由节点组成的节点树(DOM树).在DOM中,节点之间的关系有两种:父子关系兄弟关系节点:HTML页面的内容,都可以被称为节点节点分类:元素节点(标签)、文本节点(文字)、属性节点(属性)…允许开发人员通过js来操作HTML和XML二、根据节点知识进行元素查找1.获取子节点(直接后代)childNodes: 直接后代中的文本节点和元素节点children: 直接后代中的元素节点

2020-09-26 10:56:58 68

原创 JavaScript(八)数组

一、概念什么是数组?数组可以保存大批量的数据数组是js内置对象 Array一般使用instanceof来检测引用类型(对象类型) 结果为 true或者false创建数组?new Array() 定义一个空数组new Array(item,item,item…); 定义数组同时即初始化new Array(length) 定义数组同时,指定数组长度[] 代表数组数组的常见属性和方法属性:length 数组中元素的个数数组的常见特

2020-09-26 10:56:39 264

原创 JavaScript (七)日期和字符串

一、对象对象的概念:在JavaScript中一切内容都可以被抽象为对象包装对象:将基础类型包装为对象类型对象:属性 特点 变量方法 功能 函数内置对象:Date Array String RegExp …二、日期Date是JavaScript中为日期和时间的使用而封装的一个对象使用:new Date();//获取当前时间对象常用方法:获取年月日 时分秒 星期值注意:获取到的月份比真实值小1设置方法:月份比真实值小13. 获取指定日期对象 做法一

2020-09-26 10:56:24 216

原创 JavaScript(六)定时器和运动

一、定时器在JavaScript中有两个:setTimeout(code,time) 间隔固定时间之后,执行代码一次setInterval(code,time) 每隔固定时间执行代码一次两个定时器都可以实现定时器功能:放到函数内部 会每隔一定时间调用一次function fn() { console.log('1'); setTimeout(fn, 1000);//启动一个定时器,1000秒钟之后,调用fn函数}fn();停止定时器:clearTimeout(id)

2020-09-26 10:55:44 73

原创 JavaScript(五)函数高级

一、变量作用域作用域:作用范围在ES5中,根据变量的作用范围不同,将变量分为:全局变量:在整个文档中都有效(任何地方都能访问,任何地方都能修改)在函数外声明的变量都是全局变量局部变量:在指定返回有效(函数内能访问,出了函数就访问不到)在函数内声明的变量(包括参数部分)推荐使用局部变量:全局变量生命周期较长,局部变量满足快速释放的原则作用域链:指变量的一查找机制,层层向外寻找机制二、预解析浏览器在执行js代码的时候,有一个预解析的过程。浏览器将js代码的执行分为两步:1.找东西(var

2020-09-26 10:55:05 98

原创 JavaScript(四)函数

一、this关键字 this是JavaScript中一个关键字 this无处不在,在任何地方都可以访问this this在不同的地方,值是不一样 window是一个顶级对象,顶级对象可以省略 页面中的内容都属于窗口(window) this在函数外,指向window对象 在事件函数中,this指向事件的触发者 总结:this指向调用者(谁调我,this就指向谁)var li

2020-09-26 10:54:32 176

原创 JavaScript(三)程序结构

程序结构:程序执行顺序顺序结构、分支结构、循环结构一、顺序结构程序的主体结构(默认)二、分支结构分支结构的特点:只会执行一个分支(在同一个分支结构中)IfIf…elseIf…else if…elseswitch1.if语句执行规则: 若条件成立在,则执行if语句对应的代码块2.if…else执行规则:若if条件成立,则执行if语句对应的代码块,不成立,则执行else中的代码块3.多分支语句If(条件1){代码块1;}else if(条件2){代码块2;}…else

2020-09-26 10:48:35 113

原创 JavaScript(二)JavaScript数据类型

一、数据类型数据要进行分类JavaScript数据分为两类:1.基本类型(简单数据类型、原始数据类型)数值类型 number 1,3,4,5,1.1,1.11,3.1.4,-100…NaN关于出现NaN的原因a、操作的两个数,类型不一致b、有一个值为NaN,计算後为NaN字符串类型 string 内容被”” 或’’包裹在js中不区分单双引号字符串内容会原样输出‘’ “” 空字符串(空字符和空格字符串不是一个东西)布尔类型 boolean true

2020-09-26 10:48:25 138

原创 JavaScrpit(一)JavaScript初识

JavaScript初识一、JavaScript介绍1.JavaScript是什么?(1)HTML 结构层(2)Css 表现层(3)JavaScript 交互JavaScript是一门弱类型语言,是世界上最流行的脚本语言Java Python c++ c# PHP C …编程语言:HTML和css不是编程语言编程语言 :逻辑语言脚本语言:执行环境:浏览器解释性语言:编译性语言:2.JavaScript能做什么?HTML+css 静态网页HTML+css+

2020-09-26 10:47:59 230

空空如也

空空如也

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

TA关注的人

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