- 博客(17)
- 收藏
- 关注
原创 深拷贝 类和继承 原型
/** * 深拷贝 */ const obj1 = { age: 20, name: 'xxx', address: { city: 'beijing' }, arr: ['a', 'b', 'c'] } const obj2 = deepClone(obj1) obj2.address.city = 'shanghai' obj2.arr[0] = 'a1' console.log(obj1.address.city) console.lo.
2022-05-06 17:24:10
212
原创 V-for为什么要使用key,key可以换成其他吗
使用v-for更新已渲染的元素列表时,默认用就地复用策略; 1. 提升v-for渲染的效率 2. 提高渲染性能 3.避免数据混乱的情况出现 不使用索引值index:因为若用数组索引index为key,当向数组中指定位置插入一个新元素后,因为这时候会重新更新index索引,对应着后面的虚拟DOM的key值全部更新了,这个时候还是会做不必要的更新,就像没有加key一样,因此index虽然能够解决key不冲突的问题,但是并不能解决复用的情况。如果是静态数据,用索引号index做key值是没有问题的。.
2022-04-08 16:28:56
752
原创 路由传参
一、路由传递参数(对象方法)path是否可以结合params参数一起使用? 路由跳转传递参数的时候,对象的写法可以是name、path形式,但需要注意的是,path这种写法不能与params参数一起使用。 //路由传参 // 第一种:字符串形式 // this.$router.push("/search/" + this.keyword+"?k="+this.keyword.toUpperCase()); //第二种:模板字符串 // this.$router.push('/search/$th
2022-03-04 14:27:35
1047
2
原创 手写bind函数
// 模拟 bind Function.prototype.bind1 = function () { // 将参数拆解为数组 const args = Array.prototype.slice.call(arguments) // 获取 this(数组第一项) const t = args.shift() // fn1.bind(...) 中的 fn1 const self = this // 返回一个函数 return funct.
2022-03-03 15:42:09
164
原创 this的取值
作为普通函数 const zhangsan = { name: '张三', sayHi() { //this即当前的对象 console.log(this); }, wait() { setTimeout(function () { //this === window console.log(this); }) } } 使用call apply bind
2022-03-03 10:44:30
264
原创 闭包
//函数作为返回值 function create() { const a = 100 return function () { console.log(a) } } const fn = create() const a = 200 fn() // 100 // 函数作为参数被传递 function print(fn) { const a = 200 fn() } const a = 100 function fn() { conso.
2022-03-03 10:06:09
114
原创 原型和原型链
class实现继承 // 类 class Student { constructor(name, number) { this.name = name this.number = number // this.gender = 'male' } sayHi() { console.log( `姓名 ${this.name} ,学号 ${this.number}` )
2022-03-01 16:32:47
122
原创 4.JS基础-变量类型和计算
typeof能判断哪些类型 typeof运算符: 识别所有值类型 识别函数 判断是否是引用类型(不可再细分) 变量计算 字符串拼接 const a = 100 + 10 //110 const b = 100 + '10' //'10010' const c = true + '10' //'true10' if语句和逻辑运算 truly变量:!!a===true的变量 falsely变量:!!a === false的变量 何时使用=== 何时使用== 除了==null之外,其..
2022-02-28 20:38:37
102
原创 npm与包
1.什么是包 Node.js中的第三方模块又叫做包。 2.包的来源 包是由第三方个人或团队开发出来的,免费供所有人使用。 3.为什么需要包 包是基于内置模块封装出来的,提供了更高级、更方便的API, 极大的提高了开发效率。 4.从哪里下载包 全球最大的包共享平台:https:// www.npmjs.com/(搜索自己所需要的包 ) https:// registry.npmjs.org/(下载自己所需要的包 5.安装指定版本的包 在包名之后,通过@符号指定具体的版本 包...
2022-02-20 17:46:05
456
原创 Node. js中的模块化
内置模块(由Node.js官方提供,例如fs、path、http) 自定义模块(用户创建的每个. js文件,都是自定义模块) 第三方模块(由第三方开发出来的模块,使用前需要先下载) 加载模块 模块作用域 和函数作用域类似,在自定义模块中定义的变量、方法等成员,只能在当前模块内被访问,这种模块级别的访问限制,叫做模块作用域 。 模块作用域的好处 防止全局变量污染的问题 向外共享模块作用域中的成员 1. module对象 2. module. exports对象 在自定义模块...
2022-02-20 14:57:46
308
原创 同源策略和跨域
1.同源:如果两个页面的协议,域名和端口都相同,则两个页面具有相同的源。 2.同源策略 同源策略是浏览器提供的一个安全功能 1.跨域 出现跨域的根本原因 :浏览器的同源策略不允许非同源的URL之间进行资源的交互 。 2.浏览器对跨域请求的拦截 浏览器允许发起跨域请求,但是跨域请求回来的数据,会被浏览器拦截 ,无法被页面获取到 3.如何实现跨域数据请求 最主要的两种解决方案是JSONP和CORS JSONP只支持GET请求,不支持POST请求 CORS支持get和post请求 ,...
2022-02-17 18:04:37
548
原创 数据交换格式
数据交换格式,就是服务器端与客户端之间进行数据传输与交换的格式 。 经常提及的两种数据交换格式分别是 XML和JSON 1.XML,即可扩展标记语言 2.JSON,是JavaScript对象和数组的字符串表示法 ,使用文本表示一个JS对象或数组的信息,因此,JSON的本质是字符串 。 作用: JSON是一种轻量级的文本数据交换格式 ,在作用上类似于XML,专门用于存储和传输数据 , JSON比XML更小、更快、更易解析 。 JSON的两种结构 对象结构:对象结构在JSON中表示为{}括起来的内.
2022-02-17 15:22:31
1287
原创 xhr基本使用
1. XMLHttpRequest(简称xhr)是浏览器提供的 JavaScript对象,通过他它,可以请求服务器上的数据资源 。之前所学的jQuery中的Ajax函数,就是基于xhr对象封装出来了的 2.用xhr发起 get请求 创建xhr对象 调用xhr. open()函数 调用xhr. send()函数 监听xhr.onreadystatechange事件 3. xhr的readyState属性,用来表示当前 Ajax请求所处的状态 。每个Ajax请求必然处于以下状态中的一个 : ...
2022-02-17 14:30:49
20726
原创 模板引擎
渲染UI结构时遇到的问题 如果UI结构比较复杂,则拼接字符串的时候需要格外注意引号之前的嵌套。且一旦需求发生变化,修改起来也非常麻烦。 模板引擎可以根据程序员指定的模板结构和数据,自动生成一个完整的HTML页面。 模板引擎的好处 减少了字符串的拼接操作 使代码结构更清晰 使代码更易于阅读与维护 art-template模板引擎的安装 在浏览器中访问http:// aui.github. io/ art-template/ zh-cn/ docs/installation.html页面,找到下载
2022-02-16 17:28:28
242
原创 form表单的基本使用
form 标签的属性 1.action属性的值应该是后端提供的一个url地址 ,这个url地址专门负责接收表单提交过来的数据 当<form>表达在未指定action属性值的情况下 ,action的默认值为当前页面的url地址 注意:当提交表单后,页面会立即跳转到action属性指定的url地址 2. target属性用来规定在何处打开 action URL 3. method属性用来规定以何种方式把表单数据提交到action url 。可选值有get和post 默认情况...
2022-02-15 16:13:24
2255
原创 HTTP协议
HTTP协议是请求/响应的交互模型 通信(信息的传递和交换) 通信的三要素: 通信的主体 通信的内容 通信的方式 通信协议:指通信双方完成通信所必须遵守的规则和约定 HTTP请求消息的组成部分 HTTP请求消息的组成部分 :请求行(request line) 、请求头部(header)、空行和请求体四个部分组成 1.请求行 请求行由请求方式 、URL和HTTP协议版本3个部分组成,他们之间使用空格隔开 2.请求头部 请求头部用来描述客户端的基本信息,从而把客户端相关...
2022-02-13 22:03:04
5320
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅