自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 width 与 height

width值描述auto默认值。浏览器可计算出实际的宽度。length使用 px、cm 等单位定义宽度。%定义基于包含块(父元素)宽度的百分比宽度。inherit规定应该从父元素继承 width 属性的值。height值描述auto默认。浏览器会计算出实际的高度。length使用 px、cm 等单位定义高度。%基于包含它的块级对象的百分比高度。inherit规定应该从父元素继承 height 属性的值。

2021-09-22 10:32:45 2093

原创 HTML简答

什么是 HTMLHTML 是用来描述网页的一种语言。HTML 指的是超文本标记语言 (Hyper Text Markup Language)HTML 不是一种编程语言,而是一种标记语言 (markup - language)标记语言是一套标记标签 (markup tag)HTML 使用标记标签来描述网页HTML 标签HTML 标记标签通常被称为 HTML 标签 (HTML tag)。HTML 标签是由尖括号包围的关键词,比如 <html>HTML 标签通常是成对出现的,比

2021-09-18 10:40:46 498

原创 JS 中的 import 与 export

模块模块就是实现特定功能的一组方法。理想情况下,开发者只需要实现核心的业务逻辑,其他都可以加载别人已经写好的模块。但是,JavaScript 不是一种模块化编程语言,在 ES6 以前,它是不支持类,所以也就没有模块了。JavaScript 社区做了很多努力,在现有的运行环境中,实现”模块”的效果。原始写法只要把不同的函数(以及记录状态的变量)简单地放在一起,就算是一个模块。function f1(){ //...}function f2(){ //...  }上面的函数 f1(

2021-09-13 15:58:29 18923 1

原创 行内元素与块级元素

行内元素与块级元素对比内容一般情况下,行内元素只能包含数据和其他行内元素。而块级元素可以包含行内元素和其他块级元素。这种结构上的包含继承区别可以使块级元素创建比行内元素更”大型“的结构。格式默认情况下,行内元素不会以新行开始,而块级元素会新起一行。块级元素没有设置宽高宽:父元素的宽高:子元素的高(没有子元素则为0)...

2021-08-22 17:54:40 310

原创 深拷贝和浅拷贝的实现

1

2021-08-17 11:02:17 105

原创 关于闭包的理解

闭包函数:声明在一个函数中的函数,叫做闭包函数。闭包:内部函数总是可以访问其所在的外部函数中声明的参数和变量,即使在其外部函数被返回(寿命终结)了之后。特点:让外部访问函数内部变量成为可能;局部变量会常驻在内存中;可以避免使用全局变量,防止全局变量污染;会造成内存泄漏(有一块内存空间被长期占用,而不被释放)闭包就是可以创建一个独立的环境,每个闭包里面的环境都是独立的,互不干扰。闭包会发生内存泄漏,每次外部函数执行的时 候,外部函数的引用地址不同,都会重新创建一个新的地址。但

2021-08-17 09:59:38 564

原创 vue中key的作用

在 v-if 中Vue为你提供了一种方式来表达这两个元素是完全独立的,不要复用它们。只需添加一个具有唯一值的 key 属性即可<!-- 例如,如果你允许用户在不同的登录方式之间切换,下面的代码中切换 type 将不会清除用户已经输入的内容。因为两个模板使用了相同的元素,span标签不会被替换掉,仅仅是替换了它的 placeholder`。 --><template v-if="type == 'username'"> <label>Username</la

2021-08-17 09:40:17 187

原创 v-for 和 v-if 的优先级

在vue2中v-for 的优先级更高,如果同时出现在同级每次渲染都会先执行循环再判断条件,由此可见对性能损耗比较大,可使用计算属性先筛选需要的数据在vue3中v-if 的优先级更高,因为 v-if 优先级高了,这意味着 v-if 将没有权限访问 v-for 里的变量,抛出错误兼容性问题详见:vue官网描述...

2021-08-16 14:49:54 2206

原创 CSS两种盒子模型

1

2021-08-04 23:17:10 230

原创 处理异步编程

1. 回调函数// 异步请求ajax(url, () => { // 请求返回后的逻辑处理})// 读取文件fs.readFile('/etc/shells', function (err, data) { // 文件读取完毕后的操作 console.log(data);});优点:简单、容易理解和部署缺点:回调地狱,不利于代码的阅读和维护,各个部分之间高度耦合,流程会很混乱,而且每个任务只能指定一个回调函数2. 事件监听采用事件驱动模式。任务的执行不取

2021-07-30 11:41:33 128

原创 函数防抖与函数节流

函数防抖函数防抖(debounce),就是指触发事件后,在 n 秒内函数只能执行一次,如果触发事件后在 n 秒内又触发了事件,则会重新计算函数延执行时间。举个栗子:搜索框输入完实时请求搜索用户名、手机号、邮箱等输入验证浏览器窗口大小改变后,窗口调整完后,再执行 resize 事件中的代码,防止重复渲染function debounce(fn, wait) { let timer = null; return function () { if (timer !=

2021-07-14 11:46:24 114

原创 CSS实现垂直居中的常用方案

<div class="box"> <div class="content"></div></div>flex弹性布局<style>.box { width: 300px; height: 300px; background-color: orange; display: flex; align-items: center;}.content { background-color:

2021-07-13 17:49:45 85

原创 LHS查询和RHS查询

LHS当变量出现在赋值操作的左侧时试图找到变量容器本身查找的目的是对变量进行赋值不成功的LHS会导致自动隐式地创建一个全局变量(非严格模式),或者抛出ReferenceError异常(严格模式)a = 1// 这里对a进行LHS查询,想要为赋值操作找到目标。RHS当变量出现在赋值操作的右侧时进行RHS查询试图找到变量的值查找的目的是获取变量不成功的RHS会导致抛出ReferenceError异常console.log(a)//这里对a的进行RHS查询,因为a并没有赋予任何

2021-06-18 16:27:00 447

原创 JavaScript数组的常用方法

splicesplice() 方法向数组中添加项目或从数组中删除项目,然后返回被删除的项目,该方法会改变原始数组参数描述index必需。整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置。howmany必需。要删除的项目数量。如果设置为 0,则不会删除项目。item1, …, itemX可选。向数组添加的新项目。let arr = ['茨木', '妖刀', '酒吞', '阎魔']// 向数组中新增元素arr.splice(2, 0, '.

2021-06-17 15:17:37 229

原创 计算属性和侦听器

computed不同computedcomputed是计算属性,也就是依赖某个值或者props通过计算得来得数据;computed的值是在getter执行之后进行缓存的,只有在它依赖的数据发生变化,会重新调用getter来计算;不支持异步,当computed内有异步操作时无效,无法监听数据的变化;watchwatch是监听器,可以监听某一个数据,然后执行相应的操作;不支持缓存,数据变直接会触发相应的操作;监听的函数接收两个参数,第一个参数是最新的值;第二个参数是输入之前的值;支持异

2021-06-15 11:43:01 186 1

原创 Vue组件之间传值

父传子第一种方案在父组件中引用子组件在引入组件的地方绑定属性传递父组件数据在子组件里使用props接收父组件数据<!-- 父组件 --><template> <div class="fu"> <zi :msg="msg" :other="other"></zi> </div></template><script>export default { data() {

2021-06-11 16:18:41 116

原创 var let const的区别

相同都可以用来声明变量不同var是ES5提出的,let和const是ES6提出的。var声明的变量存在变量提升,变量可以在声明之前调用,值为undefined。let和const不存在变量提升,它们声明的变量一定要在声明后使用,否则报错(ReferenceError)console.log(a) //undefinedvar a = 1 ;console.log(b) //ReferenceError: b is not definedlet b = 2;console.log(c)

2021-06-07 11:37:23 104

原创 JS函数中 this 的指向问题

直接使用function fn(data){ console.log(data);}fn('hello') //hello//fn('hello') 等同于 fn.call(window,'hello'),此时 this 指向 window函数作为对象的方法被调用时,谁调用就指向谁let someone = { name: '石昊', intro: function (age) { console.log(`${this.name}在${age}岁时就比.

2021-06-03 17:31:00 92

原创 Vue跨域问题的解决

出现跨域的原因请求接口时,控制台提示:Access-Control-Allow-Origin,说明请求跨域了为了安全考虑,一个源的脚本(网页,网站)不能与另一个源的资源进行交互,所以就引发一个词叫做“同源策略”。同源策略:同源策略是一种约定,它是浏览器最核心的也最基本的安全功能,如果没有同源策略我们的浏览器将会十分的不安全,随时都可能受到攻击。同源:所谓同源(即指在同一个域),就是两个页面具有相同的协议(protocol),主机(host)和端口号(port)当协议,主机,和端口号有一个不同时,

2021-06-02 17:38:56 341

原创 浏览器内核简介

常用浏览器及其内核浏览器的内核是分为两个部分的,渲染引擎和 JS 引擎。它负责取得网页的内容(HTML、XML、图像等等)、整理讯息(例如加入 CSS 等),以及计算网页的显示方式,然后会输出至显示器或打印机。浏览器的内核的不同对于网页的语法解释会有不同,所以渲染的效果也不相同。所有网页浏览器、电子邮件客户端以及其它需要编辑、显示网络内容的应用程序都需要内核。JS 引擎则是解析 Javascript 语言,执行 javascript 语言来实现网页的动态效果。现在JS引擎比较独立,内核更加倾向于说渲染引

2021-06-02 10:59:04 224

原创 一看就会的数组遍历

遍历数组的方法太多了,还全部常用,这就很离谱先搞一个数组出来let arr = [ {id: 0, name: '阿离' }, {id: 1, name: '千姬' }, {id: 2, name: '小缘' }, {id: 3, name: '青灯' }]for 循环for (let i = 0; i < arr.length; i++) { console.log(arr[i])}// 输出// {id: 0, name: "阿离"}

2020-11-06 17:50:12 142

原创 一看就会的对象遍历

前两种比较常用,其他的花里胡哨的俺记不住for…in返回所有可枚举属性let person = { id:1, name:"ALi", age:17};for(let key in person){ console.log(key + '---' + person[key])}// 输出// id---1// name---ALi// age---17Object.keys() 和 Object.values()参数:要返回其枚举自身属性的对象返回值:一个表示给定

2020-11-06 16:15:28 186

原创 Linux环境变量简介及常用命令(也不常用)

在 Linux 系统中,环境变量是用来定义系统运行环境的一些参数,比如每个用户不同的家目录(HOME)、邮件存放位置(MAIL)等,环境变量一般是指操作系统中指定操作系统运行环境的一些参数。它相当于一个指针,想要查看变量的值,需要加上“$”。可以使用 env 命令查看Linux系统中所有环境变量(强烈不建议尝试,因为看了也没啥用,还头疼)常用的环境变量(其实都不常用,也就装各种环境时用的上 PATH)环境变量名称作用HOME用户的主目录(也称家目录)SHELL用户使用的

2020-11-06 11:36:21 203

原创 Linux系统环境变量文件解析(etc/profile ,/etc/bashrc ,~/.bash_profile)

在不同的 Linux 系统下,以下文件可能没有或是文件名不同,/etc/profile 中设定的变量(全局)的作用于所有用户,~/.bashrc 等中设定的变量(局部)只能继承 /etc/profile 中的变量。etc/profile此文件为系统的所有用户设置环境信息,当用户第一次登录时,该文件被执行,并从 /etc/profile.d 目录的配置文件中搜集shell的设置。/etc/bashrc为每一个运行 bash shell 的用户执行此文件,当 bash shell 被打开时,该文

2020-11-06 11:27:49 325

原创 免密登录Linux服务器

ssh-copy-id <服务器用户>@<服务器IP>此命令将本地电脑上的公钥发送至服务器(会存放在~/.ssh/authorized_keys)登录服务器试试吧啥,你的本地电脑上没有公钥!喔!我的老天鹅,你都不使用 git 的吗?ssh-keygen -t rsa用于生成公钥,结束...

2020-11-06 10:28:34 242 1

原创 关于Linux服务器里 /usr/bin 目录和 /usr/local/bin目录

首先注意 usr 指 Unix System Resource,而不是user/usr/bin系统预装的一些可执行程序,随系统升级会改变/usr/local/bin用户安装的可执行程序,不受系统升级影响,用户编译安装软件时,一般放到/usr/local目录下如果两个目录下有相同的可执行程序,谁优先执行会受到PATH环境变量的影响,举个栗子:echo $PATH查看环境变量/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/.local

2020-11-05 14:09:38 18818

原创 Linux服务器安装node

安装yum install node查看node和npm版本node -vnpm -v指定node版本npm全局安装一个管理node版本的管理模板n安装npm i -g n使用升级到指定的版本n 10.0.0安装最新的版本n latest安装最近的稳定版本n stable指定npm版本npm install -g npm升级到最新版本npm install -g npm@5.6.0升级到指定版本...

2020-11-04 16:22:54 2475 6

原创 Linux设置软链接

Linux设置软链接简介软连接是linux中一个常用命令,它的功能是为某一个文件在另外一个位置建立一个同不的链接,类似于windows的快捷方式。作用当我们需要在不同的目录,使用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在其它的目录下设置软连接到此文件,不必重复的占用磁盘空间。使用创建软连接ln -s <源文件或目录> <目标文件或目录>举个栗子:当前路径创建link软链接引向 /root/pro/data.jsonln –s

2020-11-04 15:41:16 8942 1

原创 个人筛选的Linux常用命令

文件和目录cd /root 进入 /root 目录cd … 返回上一级目录cd …/… 返回上两级目录cd 进入个人的主目录cd - 返回上次所在的目录pwd 显示当前路径ls 查看目录中的文件ls -F 查看目录中的文件ls -l 显示文件和目录的详细资料ls -a 显示隐藏文件mkdir <目录名> 创建目录mkdir <目录名> <目录名> 同时创建两个目录mkdir -p /<目录名>/<目录名> 创建一个目录树

2020-11-04 09:48:50 266

原创 Git常用功能笔记

常规流程初始化文件git initgit本地配置git config --global user.name ""git config --global user.email ""查看配置git config --list创建SSH keyssh-keygen -t rsa -C 123456@qq.com克隆远程仓库git clone https://github.com/xxx/xxx.git本地与Github关联git remote add ori

2020-11-03 15:13:03 145

空空如也

空空如也

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

TA关注的人

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