- 博客(144)
- 收藏
- 关注
原创 java,实现回形数输出
可以分为4部分:【上、右、下、左】,把最外层的螺旋规律摸清,内层螺旋规律同理。只要找到顺时针方向的行号和列号,依次赋值即可。比如输入3,则输出为。比如输入4,则输出为。
2024-04-22 14:45:57 260 1
原创 java内存详解
专门运行本地方法的,本地方法可以理解为堆对java的扩充,有很多功能,java实现不了,所以就需要依靠本地方法完成(本地方法都是通过c语言编写的)b.堆中存放的数据都有默认值,比如:整数为0,小数为0.0,字符为‘\u000’,boolean为false,引用数据类型为null。,记录类和方法的信息,主要保存class文件和其中的信息,代码运行之前需要先进内存(方法区)a.主要存放对象、数组,每new一次都会在堆中开辟空间,并分配地址值。③ 本地方法栈(Native Method Stack)
2024-02-21 17:23:44 471
原创 vue3的mitt全局事件总线
创建emitter模块(@/utils/emitter.ts)在组件A中监听事件(@/components/A.vue)在组件B中触发事件(@/components/B.vue)
2024-02-07 16:44:39 449
原创 【uniapp】公众号h5端配置代理解决跨域问题
2、但,微信公众号h5端只能用【微信开发者工具-公众号网页项目】调试,所以这里我们可以配置proxy代理来解决跨域问题。(设置基础地址前缀的目的是为了proxy能识别到携带这个前缀的请求,识别到之后会自动转发代理到你配置的目标服务器上)1、hbuilder内置浏览器不存在跨域问题,如果是普通web页面,可以使用hubilder内置浏览器调试。首先需要在调用的接口前面统一配置一个基础前缀,例如在config.js中设置。,之后在request请求的接口前面拼接上。
2023-12-28 11:32:11 1050
原创 微信公众号利用测试号实现本地调试微信登录授权
微信小程序可以通过内置uni.login获取到code,但是微信公众号h5想要微信授权登录,首先需要跳转到https://open.weixin.qq.com/connect/oauth2/authorize?appid=&redirect_uri=&response_type=code&scope=snsapi_userinfo#wechat_redirect去授权,同意授权之后,会自动跳转到redirect_uri指向的地址,并在查询字符串中携带回了code,拿到code之后再进行登录等一系列操作
2023-12-22 11:36:31 1906 1
原创 Vue3的一些组合式函数
1. **readonly()和shallowReadonly()** ① readonly()是将属性全部变为只读的,依然存在响应式 ② shallowReadonly()只是将第一层变为只读的(浅层次的) 2. **toRaw()和markRaw()** ① toRaw()是可以将一个由reactive生成的响应式数据转为普通数据 ② markRaw()是将一个数据标记为源数据。应用场景:已经初始化了一个对象,之后手动给这个对象添加属性的时候,vue默认将其转为响应式数据,通过mar
2023-07-12 15:02:25 179
原创 Vue3的watch和watchEffect
④ 监听ref/reactive对象中的某个引用类型数据时,不写箭头函数,监听的是内部所有属性变化;写成箭头函数监听的是地址,需开启深度监视才既能监听地址变化,又能监听内部所有属性变化。② watch必须指定需要监听哪个对象,而watchEffect无需指定,函数内部用到了哪个属性,等这个属性变化时,watchEffect会自动调用。① 监听ref定义的对象类型,监听的是对象地址变化,开启深度监视之后才可以监听到内部任意属性变化。② 监听reactive定义的对象类型,强制开启了深度监视(不可关掉)
2023-07-11 14:04:33 142
原创 Vue3如何定义一个基本数据类型和引用数据类型的数据
① 利用reactive定义的属性,底层是通过Proxy实现的,所以,修改对象中的任何一个值的时候,vue可以监听到,并及时的更新页面。① 利用ref定义的属性,底层是通过Object.defineProperty()实现的响应式,返回的是一个RefImpl引用实现。② 在template和script中直接访问对象中的属性名即可。② 在template模板中直接访问属性名即可。③ 在script标签中需要通过。
2023-07-11 10:41:21 1912
原创 Vue3与Vue2的初始main.js对比
1、Vue3中不再引入Vue构造函数,而是引入一个工厂函数createApp,减小了项目体积。说明:Vue2直接引入Vue构造函数,并利用render函数将App组件挂载到页面上。2、调用mount函数,将App组件挂载到页面上。
2023-07-11 10:11:22 287
原创 es6的Proxy与Reflect
1. **Proxy是在对目标对象的读取时,架设一层拦截,可以在读取对象中的任意一个属性时做一些额外的操作** 2. **Proxy与Object.defineProperty方式设置setter、getter方法不同的是,Proxy是对目标对象的整体拦截,而Object.defineProperty注重对对象中的单个属性拦截**
2023-03-17 16:03:26 531
原创 es6+对象扩展
【创建一个对象,与Object.defineProperty()不同的是,后者是给已有对象添加属性及属性特性,前者是创建一个新对象,并添加属性及属性特性】④ configurable: 是否可删除。【向对象中添加属性(可添加存取器属性)】③ enumerable: 是否可遍历。② writable: 是否可写。【获取对象所有的value值】【将二维数组或Map转为对象】【获取对象所有的key值】① value:属性值,【将对象转为二维数组】【获取对象属性的特性】对象rest参数使用。
2023-03-17 11:16:30 187
原创 es6+的async和await
① 函数return为非Promise类型数据,则函数返回为成功的promise,且成功的结果就是return的值。② 函数return为Promise类型数据,则函数返回的结果就是Promise的结果。
2023-03-16 13:41:29 51
原创 es6+数值扩展
① 二进制:0b1111 ② 八进制:0o1111 ③ 十进制: 11 ④ 十六进制: 0x1111 3. **Number.isFinite()** 【判断是否是有限数】 4. **Number.isNaN()** 【判断是否不是一个数字】 5. **Number.parseInt()、Number.parseFloat()** 【取整、取浮点数】 6. **Number.isInteger()** 【判断是否为整数】 7. **Number.trunc()**
2023-03-15 16:52:23 330
原创 es6中的rest参数
*rest参数与arguments参数类似,最大区别是rest参数是真正意义上的数组,而arguments是个伪数组** 2. **arguments参数**
2023-03-13 17:28:47 164
原创 es6箭头函数的注意事项
1. **箭头函数的this指向是静态的,指向的是声明该箭头函数作用域的this,且不能通过call、apply、bind方式修改this指向** 2. **箭头函数不能当做构造函数实例化对象** 3. **箭头函数没有arguments参数**
2023-03-13 17:02:52 52
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人