
笔记
小南xn
内容均为方便学习从网络摘抄总结,未注明出处请谅解。
展开
-
详解URLSearchParams
【代码】详解URLSearchParams。原创 2022-12-01 18:13:19 · 12433 阅读 · 1 评论 -
TS和JS,type和interface
概念:Ts是一个渐进式包含类型的js超集,它的作用就是为js变量提供类型支持,可以实现静态检查,高效的重构代码以及寻找bug,将js切换为基于类的面向对象的语言。最后,ts都会被编译成简单的js代码,可以使用一些js没有提供的面向对象的概念,比如说接口属性泛型。允许我们在编译的时候对代码进行错误检测和类型检测。特点:面向项目:TS - 面向解决大型的复杂项目、架构、代码维护复杂场景JS - 脚本化语言,用于面向简单页面场景自主检测:TS - 编译时,主动发现并纠正错误。原创 2022-09-29 23:06:17 · 1634 阅读 · 0 评论 -
Expo-cli搭建RN
expo-cli。原创 2022-09-22 22:25:55 · 529 阅读 · 0 评论 -
router-link渲染到了ul下的li的a标签上
解决router-link渲染到a标签上的问题(1)问题:(2)解决方法:tag 改变渲染标签 <ul class="nav"> <li v-for="(item, index) in navlist1" :key="index" > <router-link tag="div" :to="item.link" exact>{{ item.name }}</router-link> </l原创 2022-05-28 21:58:08 · 280 阅读 · 0 评论 -
Vue-Cli脚手架的搭建
在安装vue-cli前,要确认自己的电脑是否安装了nodejs、npm和cnpm等等。一、vue-cli1.搭建vue官网找到vue-cli的官网在node终端中输入命令npm install -g @vue/cli可以选择第三个自定义配置。2. 查看vue-cli的版本号vue -V或者vue --version3.创建新项目vue create Demoname4.启动项目切换终端目录到自己的项目下cd Demoname运行项目npm ru原创 2022-03-07 21:26:33 · 413 阅读 · 0 评论 -
安装nvm、node、yarn、npm和cnpm
0.nvm构建reactNavite的关系图:nvm的好处就是多版本控制node1.首先卸载干净node2.切记要以管理员身份运行cmd.exe和vscode找到从cmd.exe路径为:C:\Windows\System32右键以管理员身份运行找到vscode右键以管理员身份运行3.安装nvm和node找到nvm的官网,https://github.com/coreybutler/nvm-windows/releases下载安装包nvm-setup.zip,然后按照提示完成安装即原创 2021-12-29 11:10:58 · 742 阅读 · 0 评论 -
隐式转换 valueOf 和 toString
// 大致规律:对象-->字符串-->数值<--布尔 //不同类型的==: // 一个值是bool,比较前,false转成0, true转成1 // 一个值是字符串,另一个是数字,比较前字符串转成数字 // 一个值是对象,另一个不是,则调用对象的valueOf方法,用得到的基本类型值按照上面的两条规则比较 // null和undefined是相等的 // 比较相等之前,null和undefined不能转换成其他任何值 // N...原创 2021-12-02 14:46:28 · 433 阅读 · 0 评论 -
ES6——Promise
promise是异步编程的新的解决方案( ES6 规范),它是一个构造函数。可以实例化对象,封装异步操作,获取成功和失败的结果。优点:支持链式调用,可以解决地狱回调问题,执行的方式更为灵活。promise初体验——抽奖。原创 2021-11-29 19:20:05 · 291 阅读 · 0 评论 -
模块与组件、模块化与组件化
前端模块化原创 2021-11-08 21:12:23 · 83 阅读 · 0 评论 -
vue前端面试题
1、vue的生命周期钩子总共有几个,每一个生命周期主要是做什么事?8个生命周期钩子beforeCreatevue实例的挂载元素$el和函数data都为undefined,数据还未初始化createddata数据初始化、可以操作data、methods,处理与数据相关逻辑$el还没有,不能进行DOM操作请求数据可以放在这里beforeMount虚拟DOM节点mountedDOM节点渲染完成,可以操作DOM节点beforeUpdate只要修改值就会重复执行updated原创 2021-11-08 19:18:07 · 190 阅读 · 0 评论 -
前端(调试)工具以及白屏和卡顿
Texture Packet:处理大图片,应用场景:雪碧图。查看网络 network控制台打断点postman调接口白屏:问题:渲染没出来。js引擎停止。解决:代码出错。卡顿:问题:浏览器的性能下降:大量使用闭包内存溢出,页面图片太大,加载时间太久。计时器调用频繁。没有使用防抖或节流。解决:不再使用变量时及时进行垃圾回收机制回收,尽量减少闭包。图片大小减少。清晰度:雪碧图,懒加载和预加载。...原创 2021-10-28 16:03:35 · 303 阅读 · 0 评论 -
vue和react的区别
vue和react的区别vue和react的区别转载 2021-10-24 21:03:17 · 293 阅读 · 0 评论 -
webpack
将代码解析成抽象语法树(AST),每个 js 引擎(比如 Chrome 浏览器中的 V8 引擎)都有自己的 AST 解析器,而 Babel 是通过 Babylon 实现的。他把最新版的 javascript 编译成当下可以执行的版本,简言之,利用 babel 就可以让我们在当前的项目中随意的使用这些新最新的 es6,甚至 es7 的语法。这部分也是 Babel 插件介入工作的部分。Babel 的三个主要处理步骤分别是: 解析(parse),转换(transform),生成(generate)。转载 2021-10-24 20:58:07 · 649 阅读 · 0 评论 -
vuex
vuex 是什么?怎么使用?哪些功能场景使用它?答:vue框架中状态管理。在 main.js 引入 store,注入。新建了一个目录store.js,…export。场景有:单页应用中,组件之间的状态。音乐播放、登陆状态、加入购物车2.vuex有哪几种属性?答:有五种,分别是 State、Getter、Mutation、Action、Modulestate => 基本数据(数据源存放地)getters => 从基本数据派生出来的数据mutations => 体积更改数据的.原创 2021-10-23 09:22:09 · 98 阅读 · 0 评论 -
Linux操作系统(3.2.14find)
一、linux开发运维环境安装及部署1.虚拟机的新建 典型->稍后安装操作系统->选择Centos7 64->设置虚拟机名称及存储路径(默认)->最大磁盘容量(20GB)、单个文件存储->自定义硬件->内存(2GB)、CPU 1颗 8核心(自定)、“新CD/DVD”中使用“使用ISO镜像”设置镜像文件存储路径、网络适配器选择NAT模式->关闭'2.配置分区(至少三个)(点击+添加分区)(1)/:根分区,期望容量处不填写,代表剩余空间全部分配(2)/b原创 2021-10-13 12:35:24 · 512 阅读 · 0 评论 -
网络 网络层 | IP协议、网段划分、公网与私网、路由选择
网络 网络层 | IP协议、网段划分、公网与私网、路由选择转载 2021-10-13 12:25:57 · 505 阅读 · 0 评论 -
面向对象的理解
例如,你想吃鱼香肉丝,面向过程就是买菜买调料做菜出锅吃鱼香肉丝这一系列的逻辑过程,而面向对象就是找个餐馆点一个鱼香肉丝付钱就能吃了。面向对象就是把事物对象化,包括属性和行为,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。JS面向对象...转载 2021-10-13 12:14:25 · 79 阅读 · 0 评论 -
cmoputed和method和watch的区别
watch可以没有返回值,它只依赖于一个值,这个值可以影响到多个值的变化。computed必须有返回值,根据返回值,才能知道依赖的关系,然后数据发生变化就触发该函数。计算属性是基于它们的依赖进行缓存的。method只要页面重新渲染就会调用并触发相应的函数。...原创 2021-09-24 11:37:51 · 120 阅读 · 0 评论 -
函数声明和函数表达式的区别:
函数声明和函数表达式的区别:function sum(){};函数声明,和var一样,会被提前到代码最前面定义。fn1();// 1function fn1(){ console.log(1);}var sum=function(){};函数表达式,函数在代码执行的当前才被执行,sum才被赋值。fn2();//报错var fn2 = function(){ console.log(2);}区别:(1)函数声明定义的函数,函数名是必须的,而函数表达式的函数名是可选的。(函原创 2021-09-23 17:39:48 · 1371 阅读 · 2 评论 -
MVC和MVVM
MVVM 是Model-View-ViewModel 的缩写,它是一种基于前端开发的架构模式,其核心是提供对View 和 ViewModel 的双向数据绑定,这使得ViewModel 的状态改变可以自动传递给 View,即所谓的数据双向绑定。Vue.js 是一个提供了 MVVM 风格的双向数据绑定的 Javascript 库,专注于View 层。它的核心是 MVVM 中的 VM,也就是 ViewModel。 ViewModel负责连接 View 和 Model,保证视图和数据的一致性,这种轻量级的架构让前原创 2021-09-22 15:55:25 · 331 阅读 · 0 评论 -
强缓存和协商缓存
1.强缓存和协商缓存强缓存只有第一次需要与服务端进行交互,在http1.0协议中,如果命中强缓存,会有exprices的请求头,会设置一个绝对时间,在这个时间有效之前,都使用强缓存,标识为memory cache在http1.1中,强缓存的请求头为cache-control:max-age:3600。这是设置了一个相对时间,在这个时间有效之前,都使用强缓存。强缓存的返回的状态码为200协商缓存是指每一次都要与服务器进行交互。先判断这个资源有没有过期,如果未过期,查看资源有没有被修改,没有被修改使用缓原创 2021-09-22 15:47:06 · 1774 阅读 · 0 评论 -
输入url到页面展示经历了什么过程?
输入url到页面展示经历了什么过程?1、浏览器的地址栏输入URL并按下回车。 2、浏览器查找当前URL的DNS缓存记录。 3、根据解析出的IP地址+端口, 4、请求到达传输层,tcp协议为传输报文提供可靠的字节流传输服务,它通过三次握手等手段来保证传输过程中的安全可靠。通过对大块数据的分割成一个个报文段的方式提供给大量数据的便携传输 5、HTTP发起请求,请求中携带(请求头header、请求体body)。 6、服务器处理请求,浏览器接收HTTP响应。 7、渲染页面,构建DOM树。原创 2021-09-22 15:46:26 · 396 阅读 · 0 评论 -
new一个新对象的过程:
new一个新对象的过程:(1)先创建了一个新对象 var person={};(2)将这个对象的_proto_的指针指向了这个构造函数的原型对象prototype。(3)将构造函数的作用域赋给这个新对象(4)执行构造函数的内部代码,并将其属性和方法添加给person中的this对象。即Person.call(this). 继承构造函数的属性以及方法。(5)返回这个新对象personfunction Person(name,age){this.name=name;this.age=age;}原创 2021-09-22 15:40:54 · 2102 阅读 · 0 评论 -
DOM事件流:
1.捕获: 从外向内2.执行目标阶段3.冒泡: 从内向外事件委托:将子元素的事件委托(绑定)给父元素优点:1.减少绑定的次数2.后期新添加的元素也可以享用之前委托的事件原理:冒泡触发事件的是谁:子元素如何找到触发事件的对象:event.targetcurrentTarget 与target区别:currentTarget要求绑定事件的元素一定是触发事件的元素;target绑定事件的元素不一定是触发事件的元素...原创 2021-09-22 15:40:16 · 95 阅读 · 0 评论 -
ES6变量声明的6种方法(var、const、let)
var let const 的区别对于let 是否存在变量提升的思考?(1)var 存在变量提升,但let 和const 不存在(2)var let 的变量允许重复赋值,但 const 不能。const 是常量,声明时必须赋值,且不允许修改。(3)同一作用域下let const 声明的变量不能重复再次声明,但var 可以(4)let const 存在暂时性死区(temporal dead zone ,简称TDZ),在未声明未初始化之前不能调用。(5)let const 属于局部变量,只在转载 2021-08-04 10:20:49 · 415 阅读 · 0 评论 -
Vue:自定义组件引入单页面+动态绑定图片
通过自定义组件向单页面组件引入普通属性component文件下的Header.vue:<template> <div> <h1>{{title1}}<span>{{title2}}</span></h1> </div></template>export default { props: { title1: { type: String,原创 2021-07-22 22:19:34 · 1684 阅读 · 0 评论