![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
前端基础知识及框架
文章平均质量分 68
主要是面向前端基础知识
illion-78
志向远大程序猿
展开
-
理解LHS和RHS
这里举一个简单的例子console.log(a)在这段代码中,a就是进行RHS查询,因为我们并没有对a进行赋值操作,而是直接引用了a,我们需要查找并拿到a的值才能传递给console.log如果a=2,这里对 a 的引用则是 LHS 引用。LHS 和 RHS 的含义是“赋值操作的左侧或右侧”并不一定意味着就是“= 赋值操作符的左侧或右侧”。说白了就是变量出现在复制操作的左边是进行LHS查询,出现在右边就是进行RHS查询.赋值操作还有其他几种形式,因此在概念上最好将其理解为赋值操作的目标是谁原创 2021-09-01 18:56:46 · 569 阅读 · 0 评论 -
深拷贝和浅拷贝
简单数据类型(值类型):Number,String,undefined,null,boolean,symbol复杂数据类型(引用类型):function,Array,object, date,math,regexp(正则)区别:如何区分深拷贝与浅拷贝,简单点来说,就是假设B复制了A,当修改A时,看B是否会发生变化,如果B也跟着变了,说明这是浅拷贝,拿人手短,如果B没变,那就是深拷贝,自食其力。深拷贝的方法1、obj2=JSON.parse(JSON.stringify(obj1))缺点:1、原创 2021-08-13 19:54:09 · 148 阅读 · 0 评论 -
前端重要概念:异步编程
1 同步API, 异步API同步API:只有当前API执行完成后,才能继续执行下一个APIconsole.log('before'); console.log('after');异步API:当前API的执行不会阻塞后续代码的执行console.log('before');setTimeout( () => { console.log('last');}, 2000);...原创 2020-04-30 17:32:29 · 126 阅读 · 0 评论 -
前端框架:VUE
1、Vue 是什么?Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合2、使用Vue将helloworld 渲染到页面上3、指令本质就是自定义属性Vue中指定都是以 v- 开头v-cloak防止页面加载时出现闪烁问题 <style type="text/css"> /* 1、通过属性选择器 选择到 带有属性 v-cloak的标签 让他隐藏原创 2021-03-08 18:13:31 · 448 阅读 · 3 评论 -
React(一)
第一章:React入门1、React的特点声明式编程组件化编程React Native编写原生应用高效(优秀的Diffing算法)单向数据流2、React高效的原因使用虚拟(virtual)DOM,不总是直接操作页面真实DOM。DOM Diffing算法,最小化页面重绘。3、相关的js库react.js:React核心库。react-dom.js:提供操作DOM的react扩展库。babel.min.js:解析JSX语法代码转为JS代码的库。4、虚拟DOM与真实DOM原创 2021-02-08 19:05:18 · 110 阅读 · 0 评论 -
jQuery(二):属性操作,元素操作
1.1. jQuery 属性操作 jQuery 常用属性操作有三种:prop() / attr() / data() ;1.1.1 元素固有属性值 prop() 所谓元素固有属性就是元素本身自带的属性,比如 <a> 元素里面的 href ,比如 <input> 元素里面的 type。语法 注意:prop() 除了普通属性操作,更适合操作表单属性:disa...原创 2020-05-02 18:54:54 · 372 阅读 · 0 评论 -
前端基础:jQuery(一)
day01 - jQuery1.1. jQuery 介绍1.1.1 JavaScript 库 JavaScript库:即 library,是一个封装好的特定的集合(方法和函数)。从封装一大堆函数的角度理解库,就是在这个库中,封装了很多预先定义好的函数在里面,比如动画animate、hide、show,比如获取元素等。简单理解: 就是一个JS 文件,里面对我们原生js代码进行了封装,存放...原创 2020-04-11 21:53:56 · 88 阅读 · 0 评论 -
前端工程化:(模块化和webpack)
1.模块化的分类A.浏览器端的模块化1).AMD(Asynchronous Module Definition,异步模块定义)代表产品为:Require.js2).CMD(Common Module Definition,通用模块定义)代表产品为:Sea.jsB.服务器端的模块化服务器端的模块化规范是使用CommonJS规范:1).使用require引入其他模块或者包2).使用exports或者module.exports导出模块成员3).一个文件就是一个模块,都拥有独立的作用域C.E原创 2020-06-04 11:48:06 · 195 阅读 · 1 评论 -
javascrip基础之ES6
ES6相关概念(★★)什么是ES6ES 的全称是 ECMAScript , 它是由 ECMA 国际标准化组织,制定的一项脚本语言的标准化规范。为什么使用 ES6 ?每一次标准的诞生都意味着语言的完善,功能的加强。JavaScript语言本身也有一些令人不满意的地方。变量提升特性增加了程序运行时的不可预测性语法过于松散,实现相同的功能,不同的人可能会写出不同的代码ES6新增语法...原创 2020-05-02 13:18:14 · 128 阅读 · 0 评论 -
vueX(vue数据驱动)
###今日目标1.Vuex概述2.Vuex基本使用3.使用Vuex完成todo案例###1.Vuex概述Vuex是实现组件全局状态(数据)管理的一种机制,可以方便的实现组件之间的数据共享使用Vuex管理数据的好处:A.能够在vuex中集中管理共享的数据,便于开发和后期进行维护B.能够高效的实现组件之间的数据共享,提高开发效率C.存储在vuex中的数据是响应式的,当数据发生改变时,页面中的数据也会同步更新###2.Vuex的基本使用创建带有vuex的vue项目,打开终端,输入命令:vue原创 2020-06-17 19:48:54 · 314 阅读 · 0 评论 -
vue中MVVM原理及其实现
要实现一个mvvm的库,我们首先要理解清楚其实现的整体思路。先看看下图的流程:1.实现compile,进行模板的编译,包括编译元素(指令)、编译文本等,达到初始化视图的目的,并且还需要绑定好更新函数;2.实现Observe,监听所有的数据,并对变化数据发布通知;3.实现watcher,作为一个中枢,接收到observe发来的通知,并执行compile中相应的更新方法。4.结合上述方法,向外暴露mvvm方法。二. 实现方法首先编辑一个html文件,如下:<!DOCTYPE html>转载 2020-05-23 18:51:05 · 557 阅读 · 0 评论 -
前端基础:vue路由
1.路由的概念路由的本质就是一种对应关系,比如说我们在url地址中输入我们要访问的url地址之后,浏览器要去请求这个url地址对应的资源。那么url地址和真实的资源之间就有一种对应的关系,就是路由。路由分为前端路由和后端路由1).后端路由是由服务器端进行实现,并完成资源的分发2).前端路由是依靠hash值(锚链接)的变化进行实现后端路由性能相对前端路由来说较低,所以,我们接下来主要...原创 2020-04-22 22:21:14 · 143 阅读 · 0 评论 -
前端基础:vue(四)前后端交互promis、fetch、axios
接口调用方式原生ajax基于jQuery的ajaxfetchaxios异步JavaScript的执行环境是「单线程」所谓单线程,是指JS引擎中负责解释和执行JavaScript代码的线程只有一个,也就是一次只能完成一项任务,这个任务执行完后才能执行下一个,它会「阻塞」其他任务。这个任务可称为主线程异步模式可以一起执行多个任务JS中常见的异步调用定时器ajax事件函数...原创 2020-04-22 21:57:03 · 113 阅读 · 0 评论 -
javaScript:堆栈内存、闭包作用域
JS中的数据类型基本数据类型number (NaN, infinity)stringbooleannullundefinedsymbolbigint引用数据类型objectfunction数据类型检测typeof 检测数据类型的逻辑运算符instanceof 检测是否为个类的实例constructor 检测构造函数Object.prototype.toString.call 检查数据类型的typeof [value] 返回当前值的数据类型 "数据类型原创 2020-10-19 19:37:36 · 108 阅读 · 0 评论 -
javascript基础之继承
实现继承的各种方法:1、传统形式–>原型链缺点:过多的继承了没用的属性2、借用构造函数 -->利用call、apply(不算标准的继承模式)缺点:不能继承借用构造函数的原型每次构造函数都要多走一个函数 -->浪费效率 function Person(name,age,sex){ this.name=name; this.age=age; this.sex=sex; } function Student(name,age,sex,gr原创 2020-07-11 14:17:49 · 113 阅读 · 4 评论 -
javascrip:原型、原型链
原型1、定义:原型是function对象的一个属性,它定义了构造函数制造出的对象的公共祖先。通过该构造函数产生的对象,可以继承该原型的属性和方法。原型也是对象。2、利用原型的特性和概念,可以提取共有属性。3、对象属性的增删和原型上属性增删改查。4、对象如何查看原型。通过隐式属性__proto__5、对象如何查看对象的构造函数。通过constructorObject.prototype --原型Object.prototype={} --祖先<script type="text/jav原创 2020-07-09 21:49:58 · 107 阅读 · 0 评论 -
前端基础:WebAPIs(一)
day01 - Web APIs学习目标:能够通过ID来获取元素能够通过标签名来获取元素能够通过class来获取元素能够通过选择器来获取元素能够获取body和html元素能够给元素注册事件能够修改元素的内容能够区分innerText和innerHTML的区别能够修改像div这类普通元素的属性能够修改表单元素的属性能够修改元素的样式属性1.1. Web API介绍1....原创 2020-04-07 22:21:44 · 177 阅读 · 0 评论 -
ES6-ES11
第一章 ECMA6新特性1.1 let关键字let关键字用来声明变量,使用let声明的变量有几个特点:不允许重复声明块儿级作用域不存在变量提升不影响作用域应用场景:以后声明变量使用let就对了2.2 const关键字const关键字用来声明产量,const声明有以下特点声明必须赋初始值标识符一般为大写不允许重复声明值不允许修改块儿级作用域注意:对象属性修改和数组元素变化不会出发const错误应用场景:声明对象类型使用const,非对象类型声明选择let1.3 变量的原创 2021-01-06 16:15:03 · 221 阅读 · 0 评论