- 博客(152)
- 收藏
- 关注
原创 JavaScript的面向对象(一)
JavaScript的面向对象(一)对象的创建方式对属性操作的控制属性描述符分类数据属性描述符存取属性描述符属性描述符补充其他方法补充同时配置多个属性描述符获取指定属性的属性描述符获取整个对象多有属性的属性描述符禁止对象继续添加属性将整个对象属性的配置成不可配置将整个对象属性的配置成不可修改对象的创建方式// 1、 对象字面量的创建方式const info1 = {};info1.name = "fzb";console.log(info1); // { name: 'fzb' }// 2、
2021-09-23 09:59:54
158
原创 实验六:PL/SQL编程基础(1)
实验六:PL/SQL编程基础(1)实验目的熟悉掌握PL/SQL编程中的变量定义语句熟悉掌握PL/SQL编程中的条件语句和循环语句等流程控制语句。能熟练使用上述基本语句编写PL/SQL代码完成指定的数据处理功能。实验内容简单PL/SQL块程序编写与运行,要求:接收某一姓名信息XXX,并输出显示“Hello XXX,今天是:当前日期”。练习PL/SQL中各种类型变量的定义和使用。参见教材p140实验1,以scott模式下的表为例或以用户自定义的表为例,举例练习PL/SQL
2021-09-23 08:23:19
1456
原创 实验五:Oracle中的SQL使用
实验五:Oracle中的SQL使用实验目的掌握SQL语言中常用系统函数掌握SQL语言的应用。实验内容1. 查询SQL中如下常用函数的使用,并举例说明(完成格式参考Length)。 字符< Ltrim、Replace、Rtrim、Substr、Trim > 日期< Sysdate、Current_date、next_day > 转换< To_char、to_date、to_number > 统计函数< Sum、Avg、Max、M
2021-09-22 19:39:12
643
原创 Oracle 11g数据库管理 应用与开发 实验内容目录
oracle 11g数据库管理 应用与开发 实验内容目录最近在翻电脑时,翻到以前的oracle上课的实验文档,就整理一下,放在csdn上吧。
2021-09-22 18:53:30
193
原创 实验四:SQL*PLUS命令的使用
实验四:SQL*PLUS命令的使用实验目的进一步熟悉SQL*Plus运行环境掌握SQL*Plus的常用命令。实验内容根据题目要求,完成以下练习,并记录所有命令1. 解锁scott用户,并以scott用户连接登录到数据库。2. 查询当前用户的所有表的名称。3. 任意选取当前用户的某一表,获取该表的结构描述信息。4.自行设置SQL*PLUS的运行环境,包括每行的显示字符数、每页显示行数、每页打印标题前空行数。5.自行创建一个脚本文件(.sql文件),并使用@命令运行该脚本文
2021-09-22 17:06:29
1245
原创 实验三: SQL语句基础(复习)
实验三: SQL语句基础(复习)实验目的oracle中常用数据字典的使用。复习并掌握表管理(创建、修改、创建约束、删除等)操作实验内容1. 根据课堂讲授数据字典相关内容,将本人对数据字典所做的操作语句进行列举,对运行过程或结果截图记录。1、select * from user_tables;2、select * from user_tables;3、select * from user_sys_privs;4、select username from dba_user
2021-09-22 16:44:33
432
原创 实验二:管理Oracle数据库
实验二:管理Oracle数据库实验目的掌握Oracle数据库的启动步骤和启动模式。掌握Oracle数据库的关闭步骤和方式。实验内容简答题:1. 由于Oracle数据库启动过程是分步进行的,因此数据库有多种启动模式。简述数据库的完整启动过程的步骤,以及在每一步中主要执行的操作(参考教材P50-51页)。创建并启动与数据库对应的实例为实例加载数据库将数据库设置为打开状态2 简述数据库启动的各种模式,并写出启动各种模式的命令语句(对运行过程或结果截图记录)。比较各种启
2021-09-22 16:26:11
438
原创 创建自己的脚手架工具
创建自己的脚手架工具目录结构脚手架说明文档:fzb安装脚手架使用脚手架创建项目项目开发创建Vue组件创建Vue页面,并配置路由创建vuex_module这两天学习像 vue-cli 这些脚手架的东西,是如何创建的,自己也跟着写了写,今天发布在npm上,在之前开发的vue3+ts项目上是可以用到的,而且可以防止错误的出现脚手架将会更具自己的学习进度持续更新如果客官觉得有用,不妨给个 ⭐️叭。GitHub地址NPM地址目录结构脚手架说明文档:fzb不知道以什么名字就以自己名字首字母吧
2021-09-21 13:14:22
239
原创 包管理工具深度解析
包管理工具深度解析包管理工具npm项目配置文件package.json项目配置文件package-lock.json版本管理规范npm常用命令npm install 原理(非常重要)局部命令执行方案包管理工具npm包管理工具npm:Node Package Manager,Node包管理工具。在前端项目中也使用npm来管理依赖的包。npm管理的包查看、搜索:npm官网项目配置文件package.json创建package.json:npm init 或 npm init -y{ "name
2021-09-18 20:01:47
251
原创 JS额外知识补充:with语句&eval语句&严格模式
JavaScript额外知识补充:with语句、eval语句和严格模式with语句eval语句严格模式严格模式的限定严格模式下的this指向with语句with语句也有自己的作用域,当在传入的对象内没有找到变量时,再到上一层作用域内查找。const info = { message: "info",};const message = "window";const age = 21;with (info) { console.log(message); console.log(a
2021-09-16 20:05:10
168
原创 NodeJS常见内置模块
NodeJS常见内置模块path模块获取当前文件目录路径:__dirname.获取当前文件路径:__filename.路径拼接resolve和join文件路径dirname、文件名basename、文件类型extnamevar path = require("path");var filepath = "user/node/abc.txt";// 文件所在路径var filedir = path.dirname(filepath);console.log(filedir); // us
2021-09-16 08:44:37
353
原创 函数式编程:纯函数&柯里化&组合函数
函数式编程:纯函数&柯里化&组合函数纯函数函数的柯里化组合函数纯函数相同的输入值,产生相同的输出在函数的执行过程中,不能产生副作用。不能对传入的参数进行修改,不依赖上层作用域内的数据。函数的柯里化函数柯里化:详细函数柯里化介绍相较于链接文章内对柯里化函数的实现,感觉这个代码更容易理解一些。function currying(fn, ...args1) { function curried(...args2) { if (args2.length >= f
2021-09-14 17:19:47
193
原创 NodeJS中的模块化
NodeJS中的模块化模块化开发CommonJS画图解析赋值的全过程module.exports又是什么require函数的细节(查找规则)模块加载过程CJS和ES module的区别在NodeJS中用到的模块化方案是 CommonJS模块化开发在开发中,将整个大的项目分解成以一个个小的结构(一个个功能),每个结构有自己的逻辑代码,有自己的作用域。可以给其他作用域提供自己导出的变量,函数,对象。也可以导入其他作用域导出的变量,函数,对象CommonJS案例:通过exports进行导出,re
2021-09-13 17:32:27
201
2
原创 手写call、apply、bind函数和arguments&数组函数slice的实现
手写call、apply、bind函数和arguments&数组函数slice的实现手写call、apply、bind函数手写call函数手写apply函数手写bind函数函数的arguments介绍arguments转array知识补充:Array内slice方法的实现手写call、apply、bind函数手写call函数Function.prototype.msicall = function (thisArg, ...args) { //因为调用此方法是通过,函数对象调用的,那么这个
2021-09-11 13:02:27
273
原创 一文搞定JavaScript的this指向问题
一文搞定JavaScript的this指向问题代码执行时this在内存中的位置this绑定规则规则一:默认绑定(独立函数调用)规则二:隐式绑定规则三:显示绑定规则四:new 绑定系统API中的this指向多个绑定优先级的比较特殊绑定忽略显示绑定间接函数引用this规则之外-箭头函数面试题练习代码执行时this在内存中的位置注意:this的绑定是在代码执行时动态绑定上去的,与函数定义的位置是无关的,而与函数调用的方式和调用的位置有关。this绑定规则规则一:默认绑定(独立函数调用)一个函数经过.
2021-09-09 14:47:29
499
原创 JavaScript内存管理、闭包和内存泄漏
JavaScript 内存管理和闭包JavaScript 的内存管理JavaScript 闭包和内存泄漏从代码执行的角度给闭包下定义闭包的内存泄漏JavaScript 的内存管理JavaScript 会在定义变量时为变量分配内存JS 对于基本数据类型(boolean、string、number、null、undefined)直接在栈空间进行分配;JS 对于复杂数据类型(object)内存分配会在堆空间开辟一块空间,并将这块空间的地址返回给变量引用。JavaScript 的垃圾回收(GC)机制.
2021-09-07 08:58:57
506
原创 从输入URL到浏览器显示页面的流程
从输入URL到浏览器显示页面的流程一、URL解析1、地址解析:浏览器会判断输入的URL是否合法,输入的是URL地址还是关键字,并且根据输入的内容进行字符串编码。2、其他操作:大部分浏览器会对强制使用HTTPS协议,保证传输的安全性。3、缓存查询二、DNS解析DNS解析:根据域名查找到对应服务器的IP地址1、查询缓存:浏览器、操作系统、路由器都具有缓存,统称为 DNS高速缓存。若缓存中有记录,则不需再到根域名服务器上去查找。2、递归解析:在地址栏输入cms.coderbin.link,若
2021-09-02 22:06:36
342
原创 JavaScript代码在浏览器内的执行过程
JavaScript 代码在浏览器内是如何被执行的呢全局代码的执行过程全局函数的执行过程作用域链的查找规则新的ECMA标准作用域常见面试题全局代码的执行过程伪代码:var globalObject = { String, Data, setTimeout, Math, .....,// 省略 window:this}1、在解析的时候,JS 引擎会创建一个全局对象(globalObject:go)。编写的代码,会经过词法分析,语法分析,将定义的变.
2021-09-02 16:18:16
479
原创 浏览器的工作原理和V8引擎
问题抛出:JavaScript代码在浏览器内是如何被执行的呢?(下一篇解答)本文做知识的铺垫,有助于对原理的理解。浏览器输入url后的大致工作流程认识浏览器的内核Gecko firefox火狐浏览器Trident 微软开发,用于 IE浏览器,不久前微软也停止开始对 IE的维护。Blink Google Chrome浏览器,微软新型浏览器 Edge, Opera浏览器Webkit 苹果公司 开发,用于Safari浏览器的内核又叫排版引擎,浏览器引擎,渲染引擎浏览器的渲染过程浏览.
2021-09-01 08:10:57
591
原创 Vue3+TS后台管理系统项目完结撒花(已部署)
Vue3+TS项目完结撒花Vue3+TS后台管理系统在线体验GitHub地址客官如果觉得还不戳,github上不妨顺手点个 ⭐️,鼓励一下吧。部分展示效果关于技术栈
2021-08-27 23:25:17
2143
5
原创 超详细的Jenkins自动化部署
Jenkins自动化部署安装Java环境安装Jenkins安装Nginx安装GitJenkins任务安装Java环境通过dnf工具来进行安装centos7:yum install dnfcentos8: 系统自带Jenkins依赖Java环境,需要先安装Java环境命令:# 远程仓库搜索是否有 java安装包dnf search java-1.8# 安装java对应版本dnf install java-1.8.0-openjdk.x86_64安装JenkinsJenkins
2021-08-27 14:34:09
244
原创 echarts关于鼠标hover图标显示不正确的问题及解决
问题描述:鼠标悬停的位置和图标上显示的位置不一致!如图:问题原因: 在写这些东西的时候,加了zoom属性。body{ zoom:0.85;}这就导致了,整个页面的内容缩小了0.85,但是echarts内的坐标轴的标注却没有跟着一起减小。解决办法:对包裹echarts图形的元素,放大到缩放前的比例,也就是 1/zoom的值。.echart-box { zoom:1.176471}就可以正常显示了。...
2021-08-26 11:08:47
2091
原创 关于组件间传递ref对象的思考
关于对象分配给 ref 并在组件间传递的思考引发思考的案例:App.vue 组件内存在下面info数据。要将其传递给子组件 Home.vue。并且在Home中会对传递过去的值做操作。const info = ref({ name: "fzb", age: 21})直接传递,虽然可以修改,这种方法是通过对象的引用在修改,但是违反了单向数据流的原则。那么肯定对其做一些额外操作 : 做一层浅拷贝const homeInfo = ref({ ...props.info });这样
2021-08-19 13:04:51
380
原创 Vue3.2.2新特性
setup顶层写法(实验特性 → 新特性)<script setup>(用法)新的SFC功能v-bind可以用在SFC<style>标签中绑定响应式数据的值。两种新特性的协同工作 Demo<template> <div class="home"> <h2>Vue3.2.2新特性</h2> <hr /> <h2>age:{{ age }}</h2> &l
2021-08-15 20:38:56
916
原创 Vue源码学习(二)
Vue源码学习(二)实现一个 Mini Vue渲染系统渲染系统:h函数、mount函数patch函数function patch(oldVNode, newVNode) { if (oldVNode.tag !== newVNode.tag) { const el = oldVNode.el.parentElement; el.removeChild(oldVNode.el); mount(newVNode, el) } else { const el =
2021-08-11 18:02:44
137
原创 项目业务<细节处理 + Tabel组件的二次封装>
项目业务<细节处理 + Tabel组件的二次封装>细节处理NavMenu默认值问题描述:刷新页面,navMenu的值是设置固定的,那么在点击完其他页面之后,内容展示的确实是其他页面了,但是侧边菜单的显示的是默认设置值高亮解决:刷新之后,应当根据当前的url来确定,侧边菜单显示的内容。根据传入的地址,返回匹配到的菜单项。export function pathMapToMenu( useMenus: any[], path: string, breadCrumbList?: Bre
2021-08-11 14:27:27
174
原创 Vue源码学习(一)
Vue源码学习(一)虚拟DOMVue源码的三大核心模块实现一个Mini Vue渲染模块虚拟DOM优势1、相较于真实DOM,javaScript对虚拟DOM的操作更简单,虚拟DOM是一个JavaScript对象,JS对对象的可以做更多的逻辑操作,效率也更加高效。2、具有跨平台的优势,可以将VNode转换想要的节点,渲染在canvas,Android,iOS等。虚拟DOM的渲染过程Vue源码的三大核心模块三大模块协调工作实现一个Mini Vue渲染模块响应式系统模块入口模块(
2021-08-08 22:58:41
957
2
原创 项目业务<权限管理 + 组件二次封装>
知识点补充一:PropTypevue3为结合 ts ,props设置自定类型import { defineComponent, PropType } from "vue";// ....代码省略props: { formItem: { type: Array as PropType < IFormItemType[] > , default:() = >[] }}知识点补充二:require.context方法webpack的函数:根据传入的参
2021-08-07 12:12:06
551
5
原创 项目业务<Main部分 + 权限管理>
效果展示Vuex + TypeScript 知识补充import { useStore } from "vuex"const store = useStore()// store --->>> any 类型想对创建出来的store对象进行类型的约束,可以这样做定义相关类型// 模块内的state的类型import type { LoginStateType } from "./login/types";// 根模块内的state类型export interfac
2021-08-05 12:36:49
163
原创 项目业务<Login逻辑>
语法补充组件使用instanceType<typeof .... >: .vue文件export的对象是组件的描述,是有着具体值的对象,在template内使用的是根据组件描述创建的实例,这个组件描述是不能直接作为一个类型的。该语法可以得到具有构造函数的实例对象,这时才可以作为一个类型传入 reflocalStorage的封装class LocalCache { setCache(key: string, value: any) { window.localStorag
2021-08-03 21:03:45
175
原创 项目业务<Login页面>
项目初始化normalize.css 安装:npm install normalize.cssLogin页面组织view/login│ Login.vue├─cpns│ LoginPhone.vue│ LoginUser.vue└─hooksrules.ts遇到难点:1、在融合canvas-nest.js的时候,npm install 下载的包内是不包含 声明文件的,但是查看github的时候,发现仓库内去存在 index.d.ts文件,下载声明文件,添加
2021-07-31 16:20:41
127
2
原创 项目集成element-plus和axios
项目集成element-plus和axios注:在写对应的文件时,省略了其他库的与演示内容不相关的代码,为的是代码片段简洁点儿。element-plus的集成安装:npm install element-plus全局引入// 其余代码省略 .......import ElementPlus from "element-plus";import "element-plus/lib/theme-chalk/index.css";// 其余代码省略 .......app.use(Elemen
2021-07-30 14:18:53
1141
原创 项目集成 vue-router 和 vuex
项目集成 vue-router 和 vuex在项目内为了方便管理项目和帮助开发,需要有一个清晰的目录结构,对集成的库,需要进行相应的抽取,封装…注:在写对应的文件时,省略了其他库的与演示内容不相关的代码,为的是代码片段简介点。Vue-router的集成安装:npm install vue-router@next配置映射关系新建src/router/index.ts文件import { createRouter, createWebHashHistory } from "vue-ro
2021-07-27 10:23:33
218
原创 项目搭建规范
项目规范搭建.editorconfig配置代码格式化工具 prettierESLint检测git Husky和eslintgit commit规范.editorconfig配置editorconfig可以使不同 IDE 编辑器上处理同一项目的具有一致的编码风格配置 .editorconfig文件# http://editorconfig.orgroot = true[*] # 表示所有文件适用charset = utf-8 # 设置文件字符集为 utf-8indent_style = s
2021-07-24 11:37:45
254
原创 脚手架创建项目选择的配置
脚手架项目选择的配置Vue 脚手架创建时,选择的配置还是蛮多的,单独记录一下1、 vue cli 脚手架命令: vue create vue3_ts_cms2、 选择 Manually select features3、 vuex 和 vue-router 进行手动安装4、 选择 3.x的vue.js版本5、 Use class-style component syntax? —>n6、选择TypeScript处理工具和css预处理器7、 选择eslint对代码进行检测
2021-07-24 08:45:51
7996
原创 advancedresume高级简历
高级简历难度 ⭐️ 基本基本的HTML、CSS、JavaScript基础练习介绍通过实现一个个人网站,练习 HTML、CSS 的布局与样式,并可根据自我掌握情况简单实践 JavaScript可以参考线框图。用例描述:整个页面分为 6 大部分,每个部分又会细分为内部的小模块头部头部为线框图中最上面的一个横条,里面包含了个人姓名(或LOGO图),个人照片,锚点链接背景:背景为一个和浏览器窗口保持100%一样宽度的区域,颜色自行安排,可以是纯色,也可以尝试使用渐变色,或者使用一些 CSS 的高
2021-07-22 14:33:46
207
原创 TypeScript中类的使用
TypeScript中的类类的定义类的继承类的多态类的成员修饰符类的只读属性类的访问器类的静态成员类的抽象类和方法类类型类的定义TypeScript类里面的属性必须先声明,可以先赋值、也可以在constructor内赋值。默认条件下:在属性申明时,不需要赋值。但在 tsconfig.json内的 “strictPropertyInitialization”: true 条件下必须赋值,若不想赋值那么在声明的属性后加 !。class Person { name:string age:nu
2021-07-20 10:53:14
465
1
原创 邂逅TypeScript
邂逅TypeScriptTypeScript初体验TypeScript的环境搭建第一种:ts-node环境第二种:webpack环境TypeScript初体验安装TypeScript工具:npm install typescript -g编写TypeScript代码function sum(num1:number,num2:number):number{ return num1+num2}let str:string = "你好呀,TypeScript";console.log(str);
2021-07-14 17:27:37
169
原创 Vue知识点的补充:nextTick和historyApiFallback
Vue知识点的补充:nextTick和historyApiFallbacknextTickhistoryApiFallbacknextTickVue3.x文档解释: 将回调推迟到下一个 DOM 更新周期之后执行。在更改了一些数据以等待 DOM 更新后立即使用它。假如有这样的一中情况:点击一个按钮,我们会修改在h2中显示的message;message被修改后,获取h2的高度;用平常的方法方法来写:会发现这和想法是不一致的。使用nextTick解决原因:从浏览器的事件循环来解释,发出
2021-07-14 15:09:46
318
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅