自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 vue前端面试题及答案(上)

答:Vue是一套用于构建用户界面的渐进式JavaScript框架。响应式数据绑定:通过数据绑定实现了页面中数据与视图的自动更新,简化了开发流程。组件化开发:将页面拆分成可重用的组件,提高了代码的可维护性和复用性。虚拟DOM:通过虚拟DOM实现高效的页面更新,减少了对实际DOM的直接操作,提升了性能。生态系统丰富:有丰富的第三方库和插件可供选择,如Vue Router、Vuex等。答:Vue的生命周期是组件从创建到销毁的整个过程。created:实例创建完成后调用,可以进行数据初始化和异步操作。

2023-09-08 15:09:30 100

原创 react前端面试题及答案

虚拟DOM:使用虚拟DOM来提高性能,通过对比变化前后的虚拟DOM树,最小化对实际DOM的操作。组件化:将UI拆分为独立可复用的组件,提高代码的可维护性和可重用性。单向数据流:通过单向数据流来管理数据,降低代码的复杂度。JSX语法:使用类似HTML的语法来创建组件,提高了代码的可读性。生态系统丰富:有大量的第三方库和工具可以配合使用,比如Redux、React Router、Webpack等。: 在组件被挂载到DOM后调用,可以进行异步操作和调用其他JavaScript框架的方法。

2023-09-08 08:36:10 109

原创 什么是Vue全家桶以及Vue全家桶怎么使用

vue全家桶是基于vue开发必备的也是必学的一套框架,也可以说是一套组件,里面具体包含了如下几项:1.vue-cli 项目构建工具2.vue-router 路由管理工具3.vuex 全局变量状态管理工具4.axios http请求工具5.element-ui / iview Ui组件库最常见常用的vue全家桶简单的介绍一下,希望可以帮助你了解认识学会vue全家桶!1.vue-clivue-cli就是快速创建搭建一个vue项目的脚手架工具,安装vue-cli,直接在cmd命令执行:npm

2023-09-07 08:43:37 134

原创 微信小程序笔记--数据库

开发者可以在云函数内使用 wx-server-sdk 提供的 getWXContext 方法获取到每次调用的上下文(appid、openid 等),无需维护复杂的鉴权机制,即可获取天然可信任的用户登录态(openid)。同理,记录的引用可以用于对特定记录进行更新和删除操作。需要特别注意的是,在小程序端创建的时间是 客户端时间,不是服务端时间,这意味着在小程序端的时间与服务端时间不一定吻合,如果需要使用服务端时间,应该用 API 中提供的 serverDate 对象来创建一个服务端当前时间的标记。

2023-09-04 08:32:04 205

原创 web前端面试题及答案

绝对定位指的是一个元素相对于最近的已定位的祖先元素进行定位,如果没有已定位的祖先元素,则相对于文档的 body 元素进行定位。它是 HTML、CSS、JavaScript 和 DOM 等技术的结合体,可以实现多种交互效果,如动画、响应式设计、拖拽等。答案:ES6(ECMAScript 2015)是 JavaScript 的第六个版本,引入了很多新的语法和特性,如箭头函数、let 和 const 声明、模板字符串、解构赋值、类和模块化等。它可以自动化构建、打包、压缩、优化和转换代码,提高开发效率和代码质量。

2023-08-31 16:35:15 78

原创 React知识点总结

函数组件:以纯函数的形式定义,接收一个属性对象作为参数,返回一个React元素。类组件:通过继承React.Component类创建,使用render()方法返回一个React元素。

2023-08-29 11:01:30 64

原创 Vue.js路由 -- 路由组件传参

当我们一个组件即希望作为路由组件使用,又可能作为功能组件(某个页面中的一部分)去使用,这个时候路由组件传参的方式来做到这点。我们对 item.vue 组件进行改造,当我们在 home.vue 的商品列表上移入移出,出现商品信息提示层。中的数据自动就会被设置为组件属性与组件原有。我们通常把路由直接映射(绑定)的组件称为。传递的参数,需要对 路由 也进行一些改造。来传入了,这个时候,我们需要对。的参数,却不可以处理来自路由的。的,但是作为功能组件。传递的参数,也能接收。但是这个时候,我们的。

2023-08-25 10:21:21 61

原创 说一下对vue3的理解以及新特性有哪些

2)Composition API:Vue3 引入了 Composition API,允许开发者将一个组件的逻辑分割成可复用的逻辑代码块,提高了组件的可复用性,并且使代码更加清晰简洁。3)Teleport:Teleport 是 Vue3 中新引入的功能,允许你将一个组件渲染到 DOM 树中的任何位置,使得像模态框这类弹出式组件的实现变得更加容易。4)更好的 Typescript 支持:Vue3 深度整合了 Typescript,提供更好的类型检查和代码补全功能。

2023-08-24 08:19:56 64 1

原创 vue2 vue组件库

Vue UI组件库移动端常用的UI组件库1.Vant:Vant - 轻量、可靠的移动端组件库 (youzan.github.io)PC端常用UI组件库1.Element UI:Element - 网站快速成型工具所谓的UI组件库就是给我们提供了一些常用的布局、按钮、输入框、下拉框等等这些网页UI布局里面常用的元素,并且把这些元素以组件的形式提供给我们,我们只需要用它提供的组件,然后你就会发现结构啊样式啊交互什么的都来了。但是什么是都不是绝对的,你可以随便改一些css和js。

2023-08-22 17:23:14 119 1

原创 React脚手架详解+安装

以上就是脚手架的安装方法。

2023-08-17 08:42:03 686 1

原创 javascript原型和原型链

每个构造函数都有原型对象,每个构造函数实例都包含一个指向原型对象的内部指针(proto),如果我们让第一个构造函数的原型对象等于第二个构造函数的实例,结果第一个构造函数的原型对象将包含一个指向第二个原型对象的指针,再然第三个原型对象等于第一个构造函数的实例,这样第三个原型对象也将包含指向第一个原型对象的指针,以此类推,就够成了实例于原型的链条,这就是原型链的基本概念。

2023-08-16 16:33:14 72 1

原创 Vue生命周期

Vue的生命周期就是vue实例从创建到销毁的全过程,也就是new Vue() 开始就是vue生命周期的开始。Vue 实例有⼀个完整的⽣命周期,也就是从开始创建、初始化数据、编译模版、挂载Dom -> 渲染、更新 -> 渲染、卸载 等⼀系列过程,称这是Vue的⽣命周期。钩子函数是Vue生命周期中每个阶段对外开放让程序员操作Vue的接口。Vue有8个钩子函数。

2023-08-15 08:00:00 89 1

原创 Vue的性能优化

(7). data中的所以数据都会被劫持,所以将数据尽可能扁平化,如果数据只是用来渲染可以使用Object.freeze,可以将数据冻结起来,这样就不会增加getter和setter。(2).滚动到可视区域动态加载 ( https://tangbc.github.io/vue-virtual-scroll-list )(4).尽可能拆分组件,来提高复用性、增加代码的可维护性,减少不必要的渲染。(3).图片懒加载 (https://github.com/hilongjw/vue-lazyload.git)

2023-08-10 08:16:57 87 1

原创 set和map的区别

其原因是因为map和set是根据关键字排序来保证其有序性的,如果允许修改key的话,那么首先需要删除该键,然后调节平衡,再插入修改后的键值,调节平衡,如此一来,严重破坏了map和set的结构,导致iterator失效,不知道应该指向改变前的位置,还是指向改变后的位置。而map的迭代器则不允许修改key值,允许修改value值。map中的元素是key-value(键值对)对:关键字起到索引的作用,值则表示与索引相关联的数据;set的迭代器是const的,不允许修改元素的值;

2023-08-09 10:00:00 55

原创 hash和history的区别

当真正需要通过URL向后端发送HTTP请求的时候,比如我们前端请求的url更改造成页面刷新时 在history模式下如果前端请求的url跟后端不匹配时会产生一个错误。hash模式是依靠onhashchange事件(监听location.hash的改变)history模式是主要是依靠pushState() replaceState()hash模式的URL中会夹杂着#号,而history没有。replaceState():只能修改当前历史记录。pushState():可以创建新的历史记录。

2023-08-08 14:25:39 59 1

原创 get和post的区别

Get 方式提交数据,会带来安全问题,比如一个登陆页面,通过 Get 方式提交数据时,用户名和密码将出现在 URL 上,如果页面可以被缓存或者其他人可以访问客户这台机器,就可以从历史记录获得该用户的帐号和密码,所以表单提交建议使用 Post 方法;Get 方法通过 URL 请求来传递用户的数据,将表单内各字段名称与其内容,以成对的字符串连接,置于 action 属性所指程序的 url 后,数据都会直接显示在 url 上,就像用户点击一个链接一样;在做数据查询时,建议用Get方式;

2023-08-03 10:00:00 76

原创 MVVM和MVC有什么区别

是应用程序中用于处理应用程序数据逻辑的部分,模型对象负责在数据库中存取数据V(View)视图层:是应用程序中处理数据显示的部分,视图是依据创建的C(Controller)控制层:是应用程序中处理用户交互的部分,控制器接受用户的输入并调用模型和视图去完成用户的需求,控制器本身不输出任何东西和做任何处理。它只是接收请求并决定调用哪个模型构件去处理请求,然后再确定用哪个视图来显示返回的数据。

2023-08-02 10:00:00 97

原创 js缓存的三种方法及区别与特点

Cookie是存储在用户计算机上的小文件,保存特定客户端和网站的适量数据,并可以由Web服务器或客户端浏览器访问,允许服务器提供针对特定用户定制的页面,或者页面本身可以包含一些知道cookie中的数据的脚本。,会一直将数据存储在客户端的储存方式,即使关闭了浏览器,下次打开的时候仍然可以看到之前存储的未主动清除的数据(即便是杀毒软件或者浏览器自带的清除功能,也不能将localStorage存储的数据清除掉)1.cookie兼容所有的浏览器(本地cookie谷歌不支持),storage不支持IE6~8;

2023-08-01 10:00:00 584 1

原创 影响js性能的操作

在IE中根据name属性取得SPAN元素:w3c规范中getElementsByName是按着name属性进行检索的,而MS的IE却是按着id来检索,导致不能得到应该得到的Elements。如果参数可以是JS对象,尽量使用对象:$("div").css({ "display": "block", "background-color": "blue" });访问属性使用点(.)操作符, 当以变量的方式访问属性的时候,用下标符号([])。使用[]创建数组,如果你不知道数组长度,使用Array#push。

2023-07-27 12:45:00 90 1

原创 如何实现图片懒加载

定义:当打开一个有很多图片的页面时,先只加载页面上看到的图片,等滚动到页面下面时,再加载所需的图片。这就是图片懒加载。作用:减少或延迟请求数,缓解浏览器的压力,增强用户体验实现方式:设置图片src属性为同一张图片,同时自定义一个data-src属性来存储图片的真实地址页面初始化显示的时候或者浏览器发生滚动的时候判断图片是否在视野中当图片在视野中时,通过js自动改变该区域的图片的src属性为真实地址。

2023-07-26 15:47:29 100 1

原创 订阅者模式

订阅者(Subscriber)把自己想订阅的事件注册(Subscribe)到调度中心(Event Channel),当发布者(Publisher)发布该事件(Publish Event)到调度中心,也就是该事件触发时,由调度中心统一调度(Fire Event)订阅者注册到调度中心的处理代码。(4). emit 方法取到 arguments 里第一个当做 event,根据 event 值去执行对应缓存列表中的函数(发布者发布事件到调度中心,调度中心处理代码)(2). 在该对象上创建一个缓存列表(调度中心)

2023-07-25 15:38:35 114

原创 谈谈对深浅拷贝的理解,怎么实现深浅拷贝的?

浅拷贝只复制指向某个对象的指针,而不复制对象本身,新旧对象还是共享同一块内存。但深拷贝会另外创造一个一模一样的对象,新对象跟原对象不共享内存,修改新对象不会改到原对象。2.如何实现浅拷贝的实现方法(1)通过Object.assign()实现(2)通过Array.prototype.concat()实现(3)通过Array.prototype.slice()实现。

2023-07-20 11:18:29 112

原创 JavaScript的数据类型及区别

基本数据类型也称为简单数据类型,包含7种类型,分别是Number 、String、Boolean、BigInt、Symbol、Null、Undefined。将引用地址赋值给新变量。引用数据类型也叫复杂数据类型,通常用Object代表,普通对象、数组、正则、日期、Math数学函数都属于Object。、Null类型、Undefined类型、Object类型、BigInt类型、Symbol这8种数据类型。引用数据类型是访问的引用地址,根据引用地址找到堆中实体。分别为:Number类型、String类型、

2023-07-19 14:30:00 193

原创 数组去重的方式

/思路:利用双重for循环找出重复的元素,然后在使用Splice()方法删除重复的一个。// splice方法会改变数组长度,所以要将数组长度 en 和下标 v 减一。//打印 [2,,4,5,7,8,0,9,21]//遍历数组中所有的元素。//检查是否有重复的元素。//有,就从数组中去除。

2023-07-18 13:00:00 102 1

原创 Promise

两者都是可以同时调用多个promise实现,Promise.all可以将多个实例组装成一个新的实例,成功的时候返回一个成功数组,失败的时候则返回最先被reject失败状态的值;其中有一个实例不成功则返回reject.race()是赛跑的意思,也就是说Promise.race([p1, p2, p3])里面的结果哪个获取的快,就返回哪个结果,不管结果本身是成功还是失败。这与事件(Event)完全不同,事件的特点是,如果你错过了它,再去监听,是得不到结果的。API,各种异步操作都可以用同样的方法进行处理。

2023-07-13 08:37:46 115 1

原创 vue2知识点总结

如果data是对象的话,由于对象是引用类型,组件被复用的话,就会创建多个实例。本质上,这些实例用的都是同一个构造函数。这样就会影响到所有的实例,所以为了保证组件不同的实例之间data不冲突,data必须是一个函数。

2023-07-12 15:23:52 197 1

原创 vue2安装教程

1. 首先先检查node.js是否安装打开命令提示符,里管理员身份运行 命令提示符可以按win+R或输入cmd打开后输入node -v 查看电脑是否,以及版本号我这里显示v16.20.1 就是已经安装了node。如果没有就点击官网下载下载的时候可以看到下载的版本3.配置环境下载完成后,双击安装包,开始安装,使用默认配置安装一直点next即可,安装路径默认在下,也可以自定义修改最后点击finish,完成安装然后在cmd中查看安装版本二、Vue和脚手架安装1.安装vue.js。

2023-07-11 20:46:07 3523

空空如也

空空如也

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

TA关注的人

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