- 博客(47)
- 问答 (1)
- 收藏
- 关注
原创 闭包的概念以及基本使用场景
1、闭包的概念:一个函数和对其周围状态(lexical environment,也就是说该函数被定义时所在的环境)的引用总合在一起,就可以构成闭包(closure)。简单说,就是在一个函数内嵌套另一个函数,内层函数可以对外层函数的对象进行访问。2、闭包的影响:内存泄漏。在函数执行完成后,对内部变量的引用仍然保留,导致内存无法被释放。3、闭包的使用场景:在函数结束后,继续实现对内部变量的访问。4、闭包的注意事项:注意对消除对对象的引用。
2024-10-06 16:22:14
188
原创 宏队列和微队列
4、promise的then函数会直接加入微队列,链式调用的二级的then函数只有在上一层的then执行之后,才会加入微队列。5、宏队列函数 setTimeout、setInterval、setImmediate。2、主线程执行完成之后,再执行微队列,微队列执行完成后再执行宏队列。3、promise的构造函数传入的回调函数是同步执行。1、javascript是一个单线程语言。javascript 语言的目的(待补充)
2024-10-06 15:50:24
300
原创 OC 官方文档
https://developer.apple.com/library/archive/documentation/Cocoa/Conceptual/ProgrammingWithObjectiveC/DefiningClasses/DefiningClasses.html
2024-09-10 16:08:33
243
原创 oc记录 - UIView.layer
修改图形层属性:一旦获取了 CALayer 对象,你就可以设置或修改其属性,例如 borderWidth、borderColor、cornerRadius 等。contentsRectOfInterest: 设置图层内容的感兴趣区域。masksToBounds: 设置图层是否根据其边界裁剪子视图的边框。contentsGravity: 设置图层内容的布局方式。contentsScale: 设置图层内容的缩放比例。contentsCenter: 设置图层内容的中心点。
2024-08-27 23:02:28
304
转载 vscode源代码管理,传入/传出不显示
https://blog.youkuaiyun.com/Blingbling007/article/details/140944313
2024-08-25 10:32:51
148
转载 git 查看config文件配置
https://blog.youkuaiyun.com/weixin_38934440/article/details/122356963
2024-08-12 14:25:12
75
原创 关于hooks的一点遐想
具体可以参考闭包的场景,usecallback返回的function内部使用的永远是function创建时的state,也就是初始的state。在使用时需要注意是否确实需要。此时第二次render,第二次执行组件对应的函数,记state是state2,function还是第一次的function,没有使用新创建的function,function内部还是指向state1。第一次render,第一次执行组件对应的函数,记state是state1,function创建,function内部使用了state1;
2024-08-09 01:09:05
403
原创 Antd Proform npm安装
npm install --save @ant-design/pro-formhttps://www.npmjs.com/package/@ant-design/pro-form
2022-03-07 17:26:22
421
原创 sass-快速入门-简单翻译笔记(自用)
文章目录1. Learn Sass(快速入门)1.1 预处理1.2 变量1.3 嵌套1.4 局部模块1.5 模块1.5 Mixins(混合类型)1.6 拓展/继承(Extend/Inheritance)1.7 运算符1. Learn Sass(快速入门)https://sass-lang.com/guide1.1 预处理有两个指令sass --watch input.scss output.csssass --watch app/sass:public/stylesheets1.2 变量
2022-01-21 00:14:29
362
原创 React 参数默认值为 true
react 官网,prop的默认值是truehttps://zh-hans.reactjs.org/docs/jsx-in-depth.html#props-default-to-true
2021-12-05 17:30:53
618
原创 Object 的静态方法
仅供个人学习记录使用。表格内容来自MDN。编号函数名功能1Object.assign()通过复制一个或多个对象来创建一个新的对象。2Object.create()使用指定的原型对象和属性创建一个新对象。3Object.defineProperty()给对象添加一个属性并指定该属性的配置。4Object.defineProperties()给对象添加多个属性并分别指定它们的配置。5Object.entries()返回给定对象自身可
2021-11-27 00:12:55
280
1
原创 CSS-滚动视差 background-attachment
利用background-attachment属性的fixde,实现滚动视差。<!-- * @version: * @Author: ZZXF * @Date: 2021-11-06 01:18:14 * @LastEditTime: 2021-11-06 01:29:34 * @LastEditors: Please set LastEditors * @Description: * @FilePath: \笔记\css\14.background-attachment.html
2021-11-06 01:32:34
186
原创 react setState同步、异步问题
setState**1. 在 React 的事件中,表现为异步 **changeCount = () => { this.setState({ count: this.state.count + 1 }) console.log(this.state.count) }<button onClick={this.changeCount}>add</button>2. 在原生事件中,表现为同步componentDidMount(
2021-10-26 23:47:16
209
原创 React-生命周期
React生命周期.1. 挂载componentWillMountcomponentDidMount2. 更新componentWillReceivePropsshouldComponentUpdatecomponentWillUpdatecomponentDidUpdate3. 卸载componentWillUnmount新的生命周期1. 挂载8. getDerivedStateFromProps9. componentDidMount2. 更新10. getDeriv
2021-10-17 09:20:45
75
原创 iframe阻塞window.onload
iframe加载,会阻塞window.onload。阻塞演示:外层页面<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title> <style> iframe{ max-height: 200px; overflow: auto; } </sty
2021-10-16 21:07:17
1928
原创 CORS跨域问题以及跨域之后Set-Cookie无法设置Cookie问题
文章目录express使用`cors`库自己写一个中间件跨域Set-Cookie无效服务端-expressexpress使用cors库const cors = require('cors')app.use(cors())从库的源代码中,我们可以看出使用的是res.setHeader方法。自己写一个中间件module.exports = () => (req, res, next) => { const ref = req.headers.origin; res.hea
2021-10-07 16:27:25
3497
2
原创 jQuery的深复制以及自己实现一个简单的
文章目录1. jQuery 的深复制2. 仿写一个自己的1. jQuery 的深复制 function copy() { var options, // 被复制对象,主要是用于遍历其属性 name, // 属性名 src, // 复制到的对象 copy, // 被复制对象的属性 copyIsArray, // 被复制对象的该属性是一个数组类型 clone, //
2021-09-26 20:05:22
443
原创 Promise
文章目录1. Promise1.1 Promise 的 基本使用1. 创建2. 静态方法3. then、catch4. finally1. Promise1.1 Promise 的 基本使用1. 创建let mp = new Promise( function( resolve, reject ) { } );let mp = Promise.resolve( value );let mp = Promise.reject( value );2. 静态方法Promise.
2021-09-26 18:55:16
614
原创 Promise(手动实现)
文章目录1. `Promise`1.1 `Promise` 的 基本使用1.1.1 创建1.1.2 静态方法1.1.3` then`、`catch`1.1.4 `finally`1.2 `Promise`实现1.2.1 确定成员函数和成员变量1.2.2 准备工作1.2.3 定义状态1.2.4 定义`MP`的结构1.2.5 实现`MpPrototype`1.2.5.1 实现`resolve`和`reject`函数1.2.5.2 实现`then`1.2.5.3 进一步完善`resolve`和`reject`函数
2021-09-25 12:19:59
1115
原创 CSS-解决内联元素由于空白字符带来的间距问题
文章目录概要:1. 在项目中遇到两个行内元素之间有间隔的情况。2. 如何解决呢?1. 使用flex布局2. 不使用空格1. 不写空格2. 用注释3. 用结束标签3. 设置外层div元素的字体大小为0,a标签的字体大小独立设置。4.设置外层div元素的letter-spacing: -5px,a标签的字体间隔独立设置。5. 使用float题外话:解决高度塌陷总结概要:1. 在项目中遇到两个行内元素之间有间隔的情况。 <div> <style> a {
2021-09-16 00:27:04
569
原创 CSS-a标签内img和底部有间隔的问题
CSS的基线详细信息可以参考https://www.zhangxinxu.com/wordpress/2010/05/%e6%88%91%e5%af%b9css-vertical-align%e7%9a%84%e4%b8%80%e4%ba%9b%e7%90%86%e8%a7%a3%e4%b8%8e%e8%ae%a4%e8%af%86%ef%bc%88%e4%b8%80%ef%bc%89/a标签内img和底部有间隔的问题以下是一个很正常的写法,但是打开开发者工具我们会发现,img高度为30px,但是.
2021-09-15 23:35:34
349
原创 CSS-媒体查询media的优先级
今天在维护代码的时候,突然发现一个有趣的东西,百度了一下果然:媒体查询并不会改变选择器的优先级遵循CSS规则,同样的选择器里面同样的规则,写在后面覆盖前面的。可以举个很简单的"栗子":<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title> <style> div { c
2021-09-15 22:26:28
966
转载 offsetX各种值总结
pageX: 页面X坐标位置pageY: 页面Y坐标位置screenX: 屏幕X坐标位置screenY: 屏幕Y坐标位置clientX: 鼠标的坐标到页面左侧的距离clientY: 鼠标的坐标到页面顶部的距离clientWidth:可视区域的宽度clientHeight:可视区域的高度offsetX:鼠标坐标到元素的左侧的距离offsetY:鼠标坐标到元素的顶部的距离offsetLeft: 该元素外边框距离包含元素内边框左侧的距离offsetTop:该元素外边框距离包含元素内
2021-08-05 15:36:34
2883
转载 HTML-DOM鼠标事件
HTML-DOM事件鼠标事件属性 描述 DOM onclick 当用户点击某个对象时调用的事件句柄。 2 oncontextmenu 在用户点击鼠标右键打开上下文菜单时触发 ondblclick 当用户双击某个对象时调用的事件句柄。 2 onmousedown 鼠标按钮被按下。 2 onmouseenter 当鼠标指针移动到元素上时触发。 2 onmouseleave 当鼠标指针移出元素时触发
2021-08-05 15:25:45
157
原创 JavaScript-设计模式-单例模式
文章目录单例模式简介分类闭包(熟悉闭包的可以跳)懒汉式单例模式饿汉式单例模式单例模式简介单例模式就是某一个类型在同一时间只能存在一个实例。例如,一个页面登录的弹窗就只能存在一个,存在多个…em不可想象。再例如,电脑上打开的任务管理器,一次只能打开一个。如果一次打开两个,两个显示CPU的占用还不一样,那就乱套了。所以针对某些只能或者只需要存在一个的实例,我们就可以使用单例模式。分类单例模式分为两种,懒汉式和饿汉式(之前还搜到有登记式,这个稍后再说)。懒汉式单例:就是在定义实例的时候,不
2021-08-03 14:57:58
592
原创 JavaScript-Object.defineProperty
文章目录1. Object.defineProperty1. MDN文档2. 用途3. 具体用法:1. Object.defineProperty1. MDN文档链接:Object.defineProperty2. 用途Object.defineProperty用于给对象添加新属性或者修改原有属性。3. 具体用法:参数:Object.defineProperty(obj, prop, descriptor)// Object.defineProperty(对象, 属性名, 属性描述符)。
2021-07-28 10:01:40
98
原创 JavaScript-使用和不使用new关键字的区别
使用new关键字是利用构造函数去创建一个对象,不使用new关键字就是一次普通的函数调用。注:使用new关键字创建对象的内部过程:1. 创建一个新的对象2. 将新建对象设置为函数中的this3. 执行函数中的代码4. 将新建的对象作为返回值返回<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title>&l
2021-07-25 00:15:36
1256
1
原创 html-javascript放在head和body的区别以及js文件加载带来的阻塞
文章目录1. JavaScript放在head和body的区别2. js文件加载的阻塞1. JavaScript放在head和body的区别在HTML head部分中的JavaScripts会在被调用的时候才执行。在HTML body部分中的JavaScripts会在页面加载的时候被执行。head 部分中的脚本: 需调用才执行的脚本或事件触发执行的脚本放在HTML的head部分中。当你把脚本放在head部分中时,可以保证脚本在任何调用之前被加载。body 部分中的脚本: 当页面被加载
2021-07-24 23:51:42
3752
1
原创 JavaScript-冻结对象
文章目录1. 冻结对象2. 冻结判断3. 深冻结和浅冻结1. 冻结对象Object.freeze()'use strict'let initialData = {a: 123};initialData.a = 234;console.log(initialData.a);Object.freeze(initialData);/** * 严格模式下会报错 * TypeError: Cannot assign to read only property 'a' of object '#
2021-07-19 13:04:42
1066
空空如也
求解:nodejs的net模块使用
2021-08-02
TA创建的收藏夹 TA关注的收藏夹
TA关注的人