- 博客(49)
- 收藏
- 关注
原创 环形旋转效果
若干张图片绕圈运动,图片自身不旋转。/* 图片相反旋转,保持静止 *//* 顺时针旋转360deg *//* 逆时针旋转360deg */
2022-08-14 20:58:21 357
原创 css 水平+垂直居中
0、body 内容<body> <div class="d1"> <div class="d2"> <span>222</span> </div> </div></body>效果都是这幅图一、BFC & margin已知父子宽高!!!给父元素 overflow: hidden;(BFC),父子 margin 就不会共用
2022-05-17 20:12:25 277
原创 Vue UI组件库
常用UI 组件库移动端常用UI组件库:1.vant2.Cube UI3.Mint UI4.https://nutui.jd.com/#/PC端常用UI组件库:1.Element UI2.IView UI这里主要介绍 element-ui 的使用安装:npm i element-ui 一、全部引入src/main.jsimport ElementUI from 'element-ui' // 导入全部组件import 'element-ui/lib/theme-chalk/
2022-05-14 12:46:22 800
原创 Vue 路由
一个路由就是一组映射关系(key - value)key为路径,value为函数或者组件(VueComponents)路由组件放在 src/pages/ 下,路由配置放在 src/router/index.js 下npm i vue-routerimport VueRouter from ‘vue-router’Vue.use(VueRouter)...
2022-05-13 15:57:27 310
原创 Vue CLI(脚手架)
Vue 脚手架是 Vue 官方提供的标准化开发工具初始化1.全局安装 npm i @vue/cli -g2.打开cmd,cd到桌面:输入 vue create vue_test(vue_test是根文件夹名)3.显示如下,选择Vue2或者Vue34.等待完成(打开根目录,如下图),在创建的根目录用vscode打开vue_test:.文件目录├── node_modules ├── public│ ├── favicon.ico: 页签图标│ └── index.html:.
2022-05-13 12:48:12 894
原创 vue slot插槽
插槽:样式既可以放入父组件也可以放入子组件子组件 ></ 中 插入内容slot 要插入的位置配置子组件:components: { Category }默认插槽// 父组件 <category> <h2>提示</h2> <h4>slot插入到demo: 当只有一个卡槽且没有name属性时不用slot属性</h4></category>// 子组件 category<slot&
2022-05-12 21:15:35 266
原创 vue vuex(数据共享)
一、概念 应用中多个组件的共享状态进行集中式的管理(读/写),也是一种组件间通信的方式,且适用于任意组件间通信。二、vuex工作原理图:
2022-05-12 20:34:17 418
原创 vue 生命周期
生命周期就是指一个对象的生老病死。在Vue中,生命周期是指Vue实例对象从创建之初到销毁的过程。在vue的创建,使用,销毁过程中,会有许多事件,这些事件就被统称为生命周期函数,也叫作生命周期钩子。前八个:创建、挂载、更新、销毁beforeCreate: function(){} 可简写 beforeCreate(){}createdbeforeMounte★ mountedbeforeUpdateupdated★ beforeDestroyDestroyed后三个(不常用)
2022-05-12 19:46:05 212
原创 Vue 内置指令
v-bind:eg: v-bind:class=“className”className 不会当作字符串解析,会被当做变量解析v-model:value数据双向绑定,一般用于表单元素 input,checkboxselect等ps: v-model 默认绑定value,可以简写: v-model=“”<div id="root"> <!-- @submit.prevent 提交时默认阻止原事件 --> <form @subm
2022-05-12 19:02:54 191
原创 原型和原型链
在JavaScript中,每当定义一个函数数据类型(普通函数、类)时候,自带一个prototype属性,这个属性指向函数的原型对象,并且这个属性是一个对象数据类型的值。每一个对象数据类型(普通的对象、实例、prototype…),自带一个属性__proto__,属性值是当前实例所属类的原型(prototype)。原型对象中有一个属性constructor,它指向函数对象。native code 的意思是它是程序自带的,是二进制编译的无法显示出来代码 [native code] :是 nati.
2022-05-08 22:17:39 447
原创 for-in,for-of(含Map)详细演示
一、数组,对象示例对于字符串: 字符串本质上是字符数组对于对象数组: 就是数组,里面每个成员都是对象数组对象:也是同理let Str = 'ab'let Arr = ['11', '22']let Obj = { id: 001, name: 'aa'}let ArrObj = [ { id: '001', name: 'aaa' }, { id: '002', name: 'bbb' }]二、for-in// for- in : i 是 inde
2022-05-02 16:56:56 628
原创 SASS、LESS 安装使用
一:sass安装1.安装拓展2.打开setting.json3.将下面代码插入最外层的 { } 里面,如下图"liveSassCompile.settings.formats": [ { "format": "compressed", //出口CSS样式 expanded or compressed "extensionName": ".css", "savePath": "~/../css" //保存在当前文件的上一级的css文件夹 }
2022-04-30 11:29:41 305
原创 web开发模式+身份认证
一、web开发模式目前主流的 Web 开发模式有两种,分别是:1.基于服务端渲染的传统 Web 开发模式: 概念:服务器发送给客户端的 HTML 页面,是在服务器通过字符串的拼接,动态生成的。因此,客户端不需要使用 Ajax 这样的技术额外请求页面的数据。2.基于前后端分离的新型 Web 开发模式: 概念:前后端分离的开发模式,依赖于 Ajax 技术的广泛应用。简而言之,前后端分离的 Web 开发模式,就是后端只负责提供 API 接口,前端使用 Ajax 调用接口的开发模式。二、身份认证
2022-04-05 17:32:09 3128
原创 mysql安装及模块使用
一、下载MySQL1.下载MySQL不登陆,开始下载2.安装教程3.基本使用 (1)登录账户 (2)建库和表二、mysql模块操作mysql数据库(增删改查)users是一张表,id,username,password是列查找数据:select * from userswhere id>2插入数据:insert into users(username,password) values ("张三","123")更新数据:update users set usern
2022-04-03 16:11:31 1248
原创 Express:路由,中间件,编写接口
一、路由1.简介 路由指的是客户端的请求与服务器处理函数之间的映射关系 Express 中的路由分 3 部分组成:请求的类型、请求的 URL 地址和处理函数路由格式:app.METHOD(PATH,HANDLER) (例:app.get('/',function(){}) )2.模块化使用将路由抽离为单独模块的步骤如下: 创建路由模块对应的 .js 文件 调用 express.Router() 函数创建路由对象 向路由对象上挂载具体的路由 使用 export 向外共享路由对
2022-04-02 16:46:50 1250
原创 Express框架:创建服务器和发布static资源
总代码import express from 'express';//导入 expressconst app = express() // 创建 web 服务器// 监听客户端的 GET 和 POST 请求,并向客户端响应具体的内容app.get('/', (req, res) => { var aa = { name: '张三', age: 20, gender: '男' } // 向客户端响应一个 JSON 对象 // 调用 express 提供的 res.sen
2022-04-01 17:38:45 1607
原创 (自制)包与npm(的基本命令)
包:也叫第三方模块npm:node.js包管理器(Package Manager)npm基本命令登录与退出登录npm(先注册)npm login //登录要用户名密码邮箱及验证码npm logout包安装与卸载npm i 包名npm uninstall 包名npm i -g //表示全局模式安装,卸载时也要-g发布包与将发布包删除npm publish //在该包的终端下运行npm unpublish 包名 -force制作一个规范的包(实例)dateFormat.js
2022-03-30 20:03:10 1407
原创 ES6模块化
vsCode添加拓展 live server ,在html文件可以右键用live server打开<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device
2022-03-29 15:29:41 131
原创 Node.js模块化(CommonJS)
每个js文件都是一个自定义模块运行文件:const m = require('./1.js')// require导入模块console.log(m)// m是一个对象{}导入文件(1.js):/** * module.exports 对外接口 * exports和module.exports始终以后者为准(建议只用后者) * 一开始exports和module.exports指向同一初始对象 */exports.a = 'a';module.exports.b = 'b';/
2022-03-28 21:39:47 291
原创 Node.js内置模块:fs、path、http
fs模块/**fs模块*/const fs = require('fs');//导入fs模块// err返回错误信息(成功:null)// datastr是文件里的数据(读取失败:undefined)// utf-8是默认编码形式(可省略)fs.readFile('1.txt', 'utf-8', function (err, dataStr) { if (err !== null) { console.log(err); return; } cons
2022-03-27 16:03:35 972
原创 红黑树非详解
红黑树性质1.每个节点要么是红色,要么是黑色2.根节点必须是黑色3.红色节点不能连续(父子不能同红)4.每个叶结点(包括null节点)都是黑的5.从任意节点出发,到其所有叶子节点的简单路径上都包含相同数目的黑色节点(重点)浅谈:1.插入节点:新插入节点是红色的(–性质2–若是根节点就变黑),再插一个就是双红(–性质3–此时需要旋转或变色)。2.旋转:树的旋转本质是节点的指向发生变化,代码+画图思路就十分清晰3.红黑树可视化:在线画红黑树,用来判断自己的程序是否正确ps: 代码是我从gi
2022-03-17 19:40:16 773
原创 html 标签元素
类与继承'use strict'class student{ constructor(name){ this.name = name; } hello(){ alert('hello'); }}class stu2 extends student{ constructor(name,grade){ super(name); this.grade = grade; } xx(){
2022-03-06 13:53:05 754
原创 css笔记
选择器/*三个基本选择器*//*优先级别:id>class>标签 *//*id唯一选择器*/#idname{ color:yellow;}/*class选择器*/.classname a{ float:left;/*center变竖直,right顺序反*/ display: block; text-align: left; height: 50px; width:50px; border-radius: 10px;
2022-02-27 15:06:28 144
原创 数据结构--八大排序
时间、空间复杂度比较一、插入排序直接插入排序:void InsertSort(int K[], int n){ for (int i = 1; i < n; i++) { if (K[i] < K[i - 1]) { //K[i-1]之前的数据有序 int j = i - 1; int x = K[i]; //当前数据 while (j >= 0 && x < K[j]) { //查找在有序表的插入位置 K[j + 1] =
2021-12-02 22:16:58 662
原创 利用哈希技术统计C源程序关键字出现频度
一:题目1、题目内容: 利用Hash技术统计某个C源程序中的关键字出现的频度2、基本要求: 扫描一个C源程序,用Hash表存储该程序中出现的关键字,并统计该程序中的关键字出现的频度。用线性探测法解决Hash冲突。设Hash函数为: Hash(key)[(key的第一个字母序号)*100+(key的最后一个字母序号)] MOD 41二:设计(流程图)全部代码(运行环境:vs2019)#include<stdio.h>#include<stdlib.h>#in
2021-12-02 22:16:30 2609 8
原创 平衡二叉树(ALV树)
一、AVL树简介 AVL树的名字来源于它的发明作者G.M. Adelson-Velsky 和 E.M. Landis。AVL树是最先发明的自平衡二叉查找树(Self-Balancing Binary Search Tree,简称平衡二叉树)。 平衡二叉树定义(AVL):它或者是一颗空树,或者具有以下性质的二叉排序树:它的左子树和右子树的深度之差(平衡因子)的绝对值不超过1,且它的左子树和右子树都是一颗平衡二叉树。 平衡因子:将二叉树上某个节点的左子树高度减去右子树高度的值称为该节点的平衡因子BF
2021-11-28 16:53:17 1585 1
原创 图的遍历(深度优先与广度优先)
深度优先遍历简称DFS(Depth First Search),广度优先遍历简称BFS(Breadth First Search) 深度优先遍历一:遍历展示创建的图如下:数字代表创建顺序,从a点进行深度优先遍历:过程:1.遍历a点2. a点找到最后创建的边 5(a到c),到达c点3. c点找到最后创建的边 3(c到d),到达d点(访问过的点不再访问)4. d点找到b点,到达b点5. b点找不到未遍历的点,结束遍历结果:a->c->d->b二:运行
2021-11-20 19:18:42 1778 1
原创 图的创建(邻接矩阵和邻接表)
编译环境:vs2019 邻接矩阵一:基本概念 邻接矩阵(Adjacency Matrix)是表示顶点之间相邻关系的矩阵。设G= (V,E)是一个图,其中V= {v1,v2,…,vn} 。G的邻接矩阵是一个具有下列性质的n阶方阵:①对 无向图 而言,邻接矩阵一定是对称的,而且主对角线一定为零(在此仅讨论无向简单图),副对角线不一定为0, 有向图 则不一定如此。. ②在无向图中,任一顶点i的度为第i列(或第i行)所有非零元素的个数,在有向图中顶点i的出度为第i行所有非零元素的个数,而入度
2021-11-20 18:06:37 2673 1
原创 二叉排序树
编译环境:vs2019递归与非递归算法:指针调用:#include<stdio.h>#include<stdlib.h>#define M 50typedef struct Tree { int data; struct Tree* lchild; struct Tree* rchild;}Tree, * BitTree;void INORDER(BitTree T) { /* 递归中序: if (T == NULL) { return; } IN
2021-11-14 16:35:55 1106
原创 二叉树基本操作
二叉树的创建、递归与非递归遍历、层次遍历、销毁。(运行环境:vs2019)实验结果:完成全码:#include<stdio.h>#include<stdlib.h>#define M 50typedef struct Tree { int data; struct Tree* LChild; struct Tree* RChild;}Tree, * BitTree;BitTree createTree() { int data, t; scanf_s
2021-11-10 11:20:27 501
原创 安装虚拟机Ubuntu
1、官网下载 VMware本人:VMware-workstation-full-16.1.2-17966106.exe下载完成后安装。2、官网下载 Ubuntu镜像本人:ubuntu-20.04.3-desktop-amd64.iso3、打开 VMware点击创建新的虚拟机这里选典型,直接下一步选择镜像自行设置设置完成后选择安装位置根据需要设置空间(以后也可以改)完成初次打开要比较久...
2021-10-09 17:28:53 163
原创 Ubuntu flash 插件安装 + 视频编译失败
问题:在火狐浏览器使用B站,提示需安装flash插件解:1 根据提示下载flash插件本人下载:flash_player_npapi_linux.x86_64.tar.gz2 终端使用该命令解压tar xvzf flash_player_npapi_linux.x86_64.tar.gz3 将解压出来的iso文件移动到/lib/firefox/browser/plugins/ 目录下4 重新打开firefox即可...
2021-10-09 16:58:52 695
原创 通信录的设计(java)
通信录的设计基本要求:定义date类,至少包括年月日;定义person类,至少包括姓名、性别和出生日期;定义人员(staff)类,从person类派生,至少包括电话、地址、邮政编码、邮箱、QQ号和类别(例如:同学、朋友等)。功能要求:1、设计菜单实现功能选择;2、输入功能:输入人员信息,并保存到文件中;3、查询功能:1)能够根据姓名、电话精确查询人员信息;4、根据姓名对人员信息排序输出5、能根据姓名、电话修改人员信息6、能根据姓名、电话删除人员信息import java.io.*;
2021-05-27 19:44:55 3250 13
原创 6.GUI(图形,填充)
6 GUI编写一个能绘制各种图形的程序,如下图所示,用户使用单选按钮选择图形,使用复选按钮指定是否填充。import javafx.application.Application;import javafx.geometry.Insets;import javafx.geometry.Pos;import javafx.scene.Scene;import javafx.scene.control.*;import javafx.scene.layout.*;import javafx.
2021-05-27 19:18:40 1152 6
原创 5.文件的读写(学生类)
5 文件读写定义学生类数组,有N个人(N=5),包括姓名和语数外三名课的成绩,实现学生数组的文件读写。import java.io.*;import java.util.Scanner;public class Student { final static int N = 5; private String name; private int Chinese, English, math; public Student(String name, int Chinese, int Engl
2021-05-27 19:15:10 733
原创 4.字符串(倒序且大小写转换)
4 字符串编写一个程序,实现字符串大小写的转换并倒序输出。要求如下:(1)使用for循环将字符串“HelloWorld”从最后一个字符开始遍历。(2)遍历的当前字符如果是大写字符,就使用toLowerCase()方法将其转换为小写字符,反之则使用toUpperCase()方法将其转换为大写字符。(3)定义一个StringBuilder对象,调用append()方法依次添加遍历的字符,最后调用StringBuider对象的toString()方法,并将得到的结果输出。public class Mai
2021-05-27 19:13:28 796
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人