- 博客(30)
- 收藏
- 关注
原创 【无标题】后台管理系统-个人中心
个人中心一、获取用户信息1.初始化路由模块const express = require('express')const router = express.Router()// 验证数据的中间件const expressjoi = require('@escook/express-joi')// 导入验证规则const {update_userinfo_schema,update_password_schema,update_avatar_schema} = require('../
2022-05-28 11:07:40
1519
原创 后台管理项目
一、创建项目1.初始化包管理配置文件:npm init -y2.安装espressnpm i express@4.17.13.创建app.js作为整个项目的入口文件,导入需要的模块,并启动3007端口// 导入 express 模块const express = require('express') // 创建 express 的服务器实例 const app = express() // 调用 app.listen 方法,指定端口号并启动web服务器 app.li
2022-05-28 10:37:55
952
原创 经常遇见的面试题
1.下述有关css属性position的属性值的描述,说法错误的是?(b )A.static:没有定位,元素出现在正常的流中B.fixed:生成绝对定位的元素,相对于父元素进行定位C.relative:生成相对定位的元素,相对于元素本身正常位置进行定位。D.absolute:生成绝对定位的元素,相对于 static定位以外的第一个祖先元素进行定位。、2.下面有关浏览器中使用is跨域获取数据的描述,说法错误的是? (a)A.域名、端口相同,协议不同,属于相同的域B.js可以使用json
2022-05-27 10:57:25
486
1
原创 VUE项目--卖座app
一.由于做移动端,所以先根据设计稿设置好设置rem二、做轮播图2.使用swiper引入轮播图1)现在flims文件下自定义film-swiper组件,来显示大轮播,注意加上key值,不然会加载过早。2)自定义一个film-swiper-item组件包裹着轮播数据<film-swiper :key="datalist.length"> <film-swiper-item v-for="data in datalist" :key="data.filmId" cl
2022-05-27 10:52:45
2141
2
原创 vue2基础
1.引入vue(练习使用,没有使用cli脚手架创建环境)<script src="js/vue.js"></script>2.底层实现原理vue拦截原理:在object.defindPropety拦截 里面当你调用了一个对象的值会被get监听到,修改一对象值,会被set所监听到每次数据更改都有一个setter拦截通知watcher进行触发和更新,watcher观察者收集了很多相关的依赖和发布者和订阅者,触发订阅者进行一个调用3.动态绑定:<div :cla
2022-04-25 20:59:23
135
原创 javascript垃圾回收机制原理:
javascript垃圾回收机制原理:解决内存的泄露,垃圾回收机制会定期(周期性)找出那些不再用到的内存(变量),然后释放其内存。通常采用的垃圾回收机制有两种方法:标记清除,引用计数。标记清除:js中最常用的垃圾回收方式就是标记清除。当变量进入环境时,例如,在一个函数中声明一个变量,就将这个变量标记为"进入环境",从逻辑上讲,永远不能释放进入环境变量所占用的内存,因为只要执行流进入相应的环境,就可能会用到它们。而当变量离开环境时,则将其标记为"离开环境"。引用计数:语言引擎有一张"引用表",保
2022-04-25 20:54:11
1777
原创 es6知识
1.let1.在大括号中,才有let是块级作用域 :防止循环变量变成全局变量2.不存在变量提升 就是不会预解析3.会存在暂时死区性 就是在外部定义var num,在funtion也存在let,这个let num会让区域绑定,不访问外部的num2.const1、具有块级作用域const只在自己的{}内有效 不会影响其他的作用域2.使用const设置常量一定要初始值3.常量就是值(内存地址)不能变化的值注意:复杂数据类型例如是数组:const =[123,abc];arr[0]=321;
2022-04-22 14:24:11
190
原创 正则表达式
一、正则表达式 (一种对象)含义:是用于匹配字符串中字符组合一种模式作用:1.可以匹配要求的字符串2.可以过滤敏感词3.可以在字符串中提取我们想要的关键字特点 :灵活性强,逻辑能力高;可以极简单地达到字符串的控制二、创建正则表达式1.通过RegExp对象构造函数创建var 变量名 = new RegExp(/表达式/);2.通过字面量来创建var 变量名 = /表达式/三、检测是否是正确的正则表达 test方法regexp.test(str)前面的regexp是正则变量..
2022-04-21 11:44:28
272
原创 函数的进阶
一、this的指向1.普通函数 :function fn(){}fn();this指向window2.对象的方法 :var o ={ sayhai:function(){}}o.sathai;this指向对象o3.构造函数 :function Start(){}new Star();this指向实例对象4.绑定事件 btn.onclick = function(){}点击调用this指向绑定按钮5.定时器:setinterval(function(){},1000)每个1
2022-04-20 15:03:58
136
原创 复盘面试题
‘5’+3和‘5’-3 输出多少console.log('5'+3);//字符串拼接数字 就是53console.log('5'-3);//使用了减法,就是默认有个隐式转换,把字符串五变成number型2.下面输出是什么 var val = 'hello';console.log('Value is'+(val ==='hello')?'something':'Nothing');//somethingvar ary =[0,1,2]; ary[10] = 10consol
2022-04-20 11:38:47
997
原创 js的轮播图
实现自动轮播、左右按钮切换上下一张图片、点击小圆点切换图片效果图:1.前期html和css布局<div class="main"> <div class="focu"> <!-- 左侧按钮 --> <a href="javascript:;" class="arrow-l"> < </a> <!-- 右侧按钮 -->..
2022-04-19 15:26:55
306
原创 移动端
1.触屏事件touchstart 手指碰到Dom元素时触发touchmove 手指在一个dom上滑动触发touchend手指放开之后触发2.触摸事件对象touchEventtouches 正在触摸屏幕的所有手指的一个集合 (摸屏幕)targetTouches正在触摸当前的Dom元素上的手指的一个列表(摸列表)targetTouches【0】获取第一个手指触摸的信息changedTouches 手指列表发生的变化,从有到无,从无到有因为手指移动也会触发滚动屏幕所以这里要阻止默认的屏幕滚动
2022-04-19 14:16:34
64
原创 小知识
定时器setTimeout()window.setTimeout(调用函数,【延迟毫秒数】);一次性的注意:window在调用时候可省略延时函数单位是毫秒,可以省略,如果省略就是0;调用函数可以写函数名页面中可能有很多定时器,我们可以给定时器加标志符(名字)setTIimeout 也被称之为回调函数;需要等待时间,时间到了就调用;时间到了才执行function2.setInterval(回调函数,【j间隔时间】);(可以反复调用,时间到了就做)3.清除定时器1.window.cle
2022-04-18 22:54:57
72
原创 js杂七杂八的知识复习
1.API :预先定义的函数;给开发者提供的工具,以便轻松实现自己需要的功能。web API:是浏览器提供操作浏览器功能和页面元素的API(bom和dom)2.DOM文本对象模型,就是一个接口,用来处理可拓展的标记语言1.文档:一个页面就是一个文档,DOM中使用document来表示2.元素:页面的所有标签都是元素,用element表示3.节点:页面中所有内容都是节点(标签、属性、文本、注释),DOM中用node表示DOM把以上看做对象3.DOM获取元素:getElementByid(
2022-04-17 10:08:26
69
原创 内置对象
1.js当中对象分为3大类:自定义对象、内置对象、浏览器对象;自定义对象和内置对象是js的基础内容,属于ecmascript;浏览器对象属于js特有的2.2.内置对象:js语言自带的一些对象,提供了一些简单或者是基本的必要功能(属性和方法)特定:方便快速开发;js提供多个内置对象:math、data、array、string等等3.查文档:mdn/w3c查询内置对象4.mathMath数学对象,不是一个构造函数,所以不需要使用new来调用,直接使用里面的属性和方法就可以了 co
2022-04-15 19:46:22
1828
原创 数组的小知识
创建数组的两个方法:1.使用new Array创建新数组var arr= new Array();2.常用的是使用字面量创建数组var arr = [ ];3.获取数组元素索引:数组的下标;数组从0开始的,索引方法:数组名【索引号】console.log(arr[1])4.数组的新增通过修改length长度来新增数组长度;length是可读写; var arr=['red','blue','yellow','black']; arr.len
2022-04-15 10:00:05
286
原创 对象创建的三种方法
1.简单说,对象就是一组“键值对”(key-value)的集合,是一种无序的复合数据集合。2.创建对象三种方法:利用字面量创建对象{};var obj={}/* 创建了个空对象 */ var obj = { uname:'nima', age : 19, sex : '男', sayhai9 :function name(params) { consol
2022-04-14 14:24:53
4644
原创 javascript作用域:
作用域就是一个独立的地盘,让变量不会外泄、暴露出去。也就是说作用域最大的用处就是隔离变量,不同作用域下同名变量不会有冲突。2..js的作用域:(以下讲的都是es6之前 没有块级作用域):全局作用域 局部作用域全局作用域:整个script或者是整个 js文件内生效的注意:1.如果是函数内部直接赋值,而没有声明的变量也称作为全局变量;2.全局变量只有浏览器关闭的时候才会被销毁,比较占内存空间局部作用域(函数作用域):在函数内部的就是局部作用域,这个代码名称只有在这个函数内起效果;注意:1.函
2022-04-14 10:17:50
89
原创 js的数据类型
基本数据类型String、Number、Boolean、null、undefind、Symbol、BigInt基本数据类型存储在栈内存中的,因为基础的数据类型占用空间比较小,大小值是固定的,通过值来访问,属于被频繁使用的数据注意:Symbol和BigInt是ES6引入的新的数据类型引用数据类型(复杂数据类型)Object、Date、Function、Array等等引用的数据类型存储在堆内存中,因为引用的数据类型占空间比较大,占用内存大小也不固定。如果存储在栈中,则会影响到程序运行的性能,引用数
2022-04-13 15:26:57
453
原创 animation
1.animation和transition相同点:随着时间改变元素的值不同点:transition需要事件触发才会改变其的css属性;而animation不需要触发事件。2.动画帧:animation: comby 1s linear 1s infinite;分别对应:动画的id ,执行的时间,执行的速度,延迟的时间,执行的次数,infinite为无限次执行设置两种动画设置:第一种:@keyframes bee{ /*后面随便设置的id */
2022-04-13 10:41:04
191
原创 渐变的知识和动画总结
1..线性渐变linear-gradientbackground: linear-gradient(red,green,yellow);1.支持多颜色渐变2.支持方向 to top、to left、to bottom、to right、to bottom left、to top right等background: linear-gradient(to top,red,green,yellow);3.支持角度 background: linear-gradient(0deg,r
2022-04-13 10:39:39
810
原创 杂七杂八的知识总结
1.文本阴影`div{ text-shadow:10px 10px 1px red; } 第一个值:水平方向的位移 都可以设置负数第二个值:垂直方向的位移第三个值:模糊程度第四个值阴影颜色2.盒子阴影box-shadow: 10px 10px 1px 10px yellow inset;第一个值:水平方向的位移 都可以设置负数第二个值:垂直方向的位移第三个值:模糊距离第四个值阴影大小第五个值阴影颜色最后一个值 inset内阴影3.
2022-04-13 10:38:26
89
原创 选择器的基础知识总结
1.层级选择器 (+ ~作用的是兄弟关系):子代选择器 .box>li{ border: 1px solid red; }+: 当前元素的后面第一个兄弟 .child+li{ background-color: aquamarine; }~:当前元素后面所有的兄弟元素` .child~li{ background-color: yellow;
2022-04-13 10:37:22
162
原创 杂七杂八的知识
1.精灵图;图片整合技术 称之为css精灵图或者是雪碧图1.将导航背景图片,按钮背景图片按照规律进行合并成一张背景图片,即多张图片合成一张被禁图片,来实现背景图的定位作用:通过整合图片可以减少图片的体积;通过图片整合来减少对服务器的请求次数,从而提高加载速度每次都向服务器请求图片,有多少张,请求多少次。使用精灵图之后可请求一次即可2.隐藏内容两个方法:display:none 和visibility:hidden区别:display:none 不占位隐藏 摸不着;visibility:hid
2022-04-13 10:25:13
50
原创 定位position总结
1.定位position属性值:绝对定位 position:absolute (不保留位置 脱离文档流)(1)没有父元素或者父元素没有定位,参照物是浏览器窗口的第一屏 如果修改了元素大小 使得浏览器最大最小值改变,还是相对于之前的 并不会改变(2)有父元素且父元素有定位,参照物是父元素一般是设置子绝父相可以设置top、bottom、left、right 值控制相对位置固定定位 fixed:相对于浏览器窗口进行定位。元素的位置通过 "left", "top", "right" 以及 "bott
2022-04-13 10:24:16
7378
1
原创 盒子属性的总结
1.边框 border样式:solid 实线 double 双实线 dashed 线状线;dotted 点状线设置边框的方向(1)border-top:设置上边框 同理left right bottom(2)用border-width:四个值 (一个值代表四条边框上下左右;2个值代表上下、左右;三个值代表着上、左右、下;四个值代表四个方向)border-color 同理上面的 可以给各个方向加上不同颜色border-style:设置四个边框的样式2.外边距 marginma...
2022-04-13 10:20:03
539
原创 字体和背景的知识点回顾
1.字体:font-size字体大小 单位px 默认十六font-family字体 默认微软雅黑 可以添加多个字体用逗号隔开 要是第一个字体不加载就加载第二个字体color:字体颜色 也可以用rgb (0-255) / #十六进制font-weght:加粗 范围100-900 100最细 400正常font-style:倾斜 italic 斜体 正常normal oblique更倾斜text-align 常用 justify 两端对齐line-heigth 行高letter-spacing
2022-04-13 10:18:36
88
原创 css一些内容
1.link和@import区别:1.link是xhtml提供的标签,@import是css提供的一种方式2.link:当浏览网页时 css同时加载;@import 会加载完网页之后 再加载样式css兼容性问题:link没问题 ; @import是css2.1提出 老的浏览器不支持 ie5以上才可以2.css样式权重计算数值1.内联样式 10002.id样式 01003.class样式 0010 hover,nth-child()等CSS3"伪标签"权重与"真-class"相同;4.标
2022-04-13 10:17:29
40
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人