JavaScript-变量提升与函数提升 前言什么是变量提升?变量提升是对JavaScript(hoisting)执行上下文的一种认识。不管变量是在作用域的那个地方声明的,都会提升到当前作用域的最顶部。JavaScript 中,变量可以在使用后声明,也就是变量可以先使用再声明。 预解析预解析 -> 变量提升、函数提升(声明变量和函数) -> 执行代码 、执行赋值变量提升和函数提升不过是预解析的执行过程。 1// 解析之前 2019-12-09 JavaScript 变量 变量提升 函数提升
JavaScript中的执行上下文 概念当函数执行时,会创建一个执行上下文的内部空间(可以理解为作用域)。 Javascript 代码都是在执行上下文中运行。 执行上下文的类型 全局执行上下文 - 默认的上下文,任何不在函数内部的代码都在全局上下文中。它会创建一个全局的window对象,设置this的值等于这个全局对象。一个程序中自只会有一个全局执行上下文。 函数执行上下文 - 当函数被调用时,就会为该函数创建一个新的上下文。 2019-12-09 JavaScript 作用域
JavaScript中的this 在面向对象的语言中,this 都是指向当前对象的。而在 JavaScript 中 this 会随着执行环境的改变而改变。 在对象方法中,this 表示该方法所属的对象。 如果单独使用,this 表示全局对象。 在函数中,this 表示全局对象。 在函数中,在严格模式下,this 是未定义的(undefined)。 类似 call() 、 apply() 、bind() 方法可以将 this 引用 2019-12-09 JavaScript JavaScript
Javascript数据类型 前言JavaScript 是一种弱类型或者说动态语言。在程序运行过程中,类型会被自动确定,意味着可以用一个变量保存不同类型的数据。但是这样不利于我们代码的编写,导致整个项目的复杂,不利于后期的维护。 数据类型 原始类型 Boolean Null Undefined Number BigInt String Symbol BigInt Object 布尔类型布尔可以有两个值:true和fals 2019-12-09 JavaScript 数据类型
CSS伪类与伪元素 伪元素 伪类 作用 ::first-letter 将样式添加到文本的首字母 ::first-line 将样式添加到文本的首行 ::before 在某元素之前插入某些内容 ::after 在某元素之后插入某些内容 伪类CSS 伪类 伪类 作用 :hover 将样式添加到鼠标悬浮的元素 :active 将样式添加到被激活的元素 :focus 将样式添加到获得 2019-12-09 CSS 伪类 伪元素
CSS保持浮层水平垂直居中 前言子绝父相:子元素绝对定位,父元素相对定位。让子元素 以其父元素为标准来定位。如果父元素没有相对定位的话,子元素就会相对body或浏览器定位产生不好的效果。在平常使保持浮层水平垂直居中,是我们经常遇到的一个问题,因浏览器版本或者元素的宽度、高度不确定等问题,往往需要使用不同的方式来应对。 使用绝对定位和transform如果不确定子元素的宽度高度下,可以使用此方法。不过transform (2D 2019-12-09 CSS 定位 居中 Flex Box transform
CSS盒子模型 CSS 盒子模型每个HTML元素都是盒子。 如图一个盒子的组成部分: Content(内容) - 盒子的内容,显示的文字和图片。 Padding(内边距) - 元素的内边距,内容周围的区域。 Border(边框) - 包裹内容与内边距的边框。 Margin(外边距) - 元素的外边距。 盒子模型计算公式标准盒子模型:宽度=内容的宽度(content)+ border + padding + 2019-12-06 CSS 盒子模型