学会js中的promise,看这一篇就够了!!!
👻认识promise作用👻promise介绍
在 JavaScript 中,Promise 是一种强大的异步编程工具,它的作用在于处理异步操作,使得代码更>具可读性和可维护性。Promise 最早出现在 ECMAScript 6(ES6)中,它为开发者提供了一种更结>构化的方式来处理异步任务,尤其是网络请求、文件读写、定时任务等等。
👻Promise 主要作用
处理异步操作:Promise 可以用来处理异步操作,例如网络请求、文件读写、定时器等等。这有助于避免回调地狱(Callback Hell)和提高代码的可读性。
更好的错误处理:Promise 允许我们轻松地捕获和处理异步操作中的错误,而不需要使用传统的 try-catch 块。
链式调用:Promise 支持链式调用,可以按顺序执行一系列的异步操作,使代码看起来更加清晰。
👻promise基本使用Promise 是一个代表异步操作最终完成或失败的对象。一个 Promise 可以处于以下三种状态之一:
Pending(进行中):初始状态,表示异步操作还在进行中,尚未完成或失败。
Fulfilled(已完成 ...
网络请求和分页功能的实现
💌网络请求和分页功能的实现 核心 : 通过后端接口返回数据渲染 Vue 页面组件并实现分页功能
在现代前端开发中,网络请求和分页功能的实现是一个常见的任务。本篇文章将会介绍如何通过后端接口获取数据并在 Vue 页面组件中渲染,同时实现分页功能。我们将使用 Vue 3 作为前端框架,并结合 Pinia 进行状态管理。
💌网络请求12345678910import hyRequest from '../request'// 分页数据传递参数export function getHomeHouselist(currentPage) { return hyRequest.get({ url: "/home/houselist", params: { page:currentPage } })}
注:这里我们使用了 hyRequest 这个封装好的 Axios 请求库,以便进行网络请求。
123456789101 ...
v-for加载本地图片 解决渲染本地静态图片问题
v-for加载本地图片 解决渲染本地静态图片问题在element ui plus使用跑马灯组件,想用v-for渲染本地静态图片无法显示,主要问题是本地图片拿不到路径,无法显示。
首先找到的解决方案是用require引入图片路径,data中使用键值对的方式存储图片路径,使用v-for遍历
12345678910111213141516171819202122<template> <div class="swiper"> <el-carousel :interval="4000" type="card" height="300px" pause-on-hover arrow="always"> <el-carousel-item v-for="item in carouseData" :key="item"> <img :src ...
vue.js3的设计思路
Vue.js 3 的设计思路🎈声明式地描述UIVue.js 3 是一个声明式的UI框架。设计一个这样的框架,我们需要了解编写前端页面都涉及哪些内容?具体如下:
DOM元素:是div标签还是a标签。
属性:如a标签的href属性,再如id、class等通用属性
事件:如click、keydown等。
元素的层级结构:DOM树的层级结构,既有子节点,又有父节点
如何声明式的描述上述内容呢?
使用与 HTML 标签一致的方式来描述 DOM 元素,例如使用 <div></div>来描述一个 div 标签。
使用与 HTML 标签一致的方式来描述属性,例如<div id='app'></div>
使用:或v-bind来描述动态绑定的属性,例如<div :id='Tshe'></div>
使用@或v-on来描述事件,例如点击事件<div @click="e"></div>
使用与HTML标签一致的方式来描述层级结构,例如一个具有span子节点的 ...
了解下this和箭头函数的使用
了解下this和箭头函数的使用✨调用位置
作用域跟在哪里定义有关,与在哪里执行无关
this指向跟在哪里定义无关,跟如何调用,通过什么样的形式调用有关
this(这个) 这个函数如何被调用(方便记忆)
为了方便理解,默认情况下不开启严格模式
✨this的四种绑定规则✨默认绑定函数最常用的调用方式,调用函数的类型:独立函数调用
123function bar() { console.log(this) // window}
✨隐式绑定用最通俗的话表示就是:对象拥有某个方法,通过这个对象访问方法且直接调用
123456var obj = { name: "xiao", foo: foo}obj.foo() // obj对象
✨显示绑定 apply/call/bind(也称硬绑定)但是在某些场景下,this的改变都是意想不到的,实际上我们无法控制回调函数的执行方式,因此没有办法控制调用位置已得到期望的绑定即this指向。
接下来的显示绑定就可以用来解决这一隐式丢失问题。
1234567891011fu ...
简单DP
简单DP🪁简介
动态规划:DP:Dynamic Programming是算法的设计方法,是一种编程思想,主要用于解决最优解类型的问题。
对于一个DP问题,首先将问题分解,任选一个最优解的子状态分析,与原问题(原状态)有什么关系。
列出状态转移方程,这个尤为重要
🪁详讲从集合的角度理解Dp从两个角度考虑
状态表示,考虑清楚用几维表示状态,表示的是哪一个集合,存的数是集合中的哪一个属性状态计算,如何一步步把每一个状态算出来
🪁状态表示每一个状态都表示一个集合
因此要考虑,f(i,j) 表示的是哪一个集合,例如背包问题表示的是所有选法的集合
属性:f(i,j) 表示的是一个集合,实际上存的是一个数,这个数是这个集合的某种属性。因此属性一般有三种:max,min,元素数量
集合:表示的是所有选法的一个集合(选哪些物品)还有满足一些条件,在01背包问题中,条件是从前i个物品选,总体积小于等于题目要求
状态表示 举例:在01背包问题中,f(i,j) 表示从前i 个物品中选,总体积小于等于j选法的集合,存的数是这个集合的每一个选法价值的最大值
🪁状态计算对应的是集合的划分如何把当前的集合划 ...
基础算法 二分
基础算法:二分🪁简介
二分查找(binary search),也称折半搜索、对数搜索是用来在一个有序数组中查找某一元素的算法。
🪁时间复杂度
二分查找的最优时间复杂度为O(1) 。
二分查找的平均时间复杂度和最坏时间复杂度均为 O(logn)。
🪁空间复杂度
迭代版本的二分查找的空间复杂度为O(1) 。
递归(无尾调用消除)版本的二分查找的空间复杂度为O(logn) 。
🪁详讲就好比说你要从一本英汉词典上查一个单词,你从头到尾一页一页的翻着找,这样找可以保证一定能找到,但是最坏情况你要把整本词典都翻一遍,那就麻烦了。
有什么改进的方法吗?当然有。
考虑把这个词典从中间分开,看一下中间那一页的主要单词都是啥,然后去判断我要找的单词应该在左半部分还是右半部分,再去那一部分考虑怎么找就好了。同样的,在另一部分也是要进行划分并且判断的操作。这样一直进行下去,便能很快的找到答案,而且根本不需要翻过整个词典来。
可以证明,如果一页一页的找,最多要找n次,但是用这个方法,最多找floor(log2n)次。
我们把这个方法叫做“二分答案”。顾名思义,它用二分的方法枚举答案,并且枚举时判断 ...
机械学习—VGG网络模型介绍
⚙简介模型的名称——“VGG”代表了牛津大学的Oxford Visual Geometry Group,该小组隶属于1985年成立的Robotics Research Group,该Group研究范围包括了机器学习到移动机器人。下面是一段来自网络对同年GoogLeNet和VGG的描述:
“GoogLeNet和VGG的Classification模型从原理上并没有与传统的CNN模型有太大不同。大家所用的Pipeline也都是:训练时候:各种数据Augmentation(剪裁,不同大小,调亮度,饱和度,对比度,偏色),剪裁送入CNN模型,Softmax,Backprop。测试时候:尽量把测试数据又各种Augmenting(剪裁,不同大小),把测试数据各种Augmenting后在训练的不同模型上的结果再继续Averaging出最后的结果。”
需要注意的是,在VGGNet的6组实验中,后面的4个网络均使用了pre-trained model A的某些层来做参数初始化。虽然提出者没有提该方法带来的性能增益。先来看看VGG的特点:
小卷积核。作者将卷积核全部替换为3x3(极少用了1x1);
小池 ...
你为什么不自己去看东京铁塔
你为什么不自己去看东京铁塔
很久以前有个人说要带我去看东京铁塔,我就跟个傻逼似的把东京当成一特神圣的地儿,年复一年日复一日地盼着。2013年的夏天,我在日本和歌山大学做交换生。周末自己背着双肩包就来到了东京。曾经在脑海里幻想过无数次的和身边的朋友念叨了无数次要和你来看的东京铁塔。真的来到了,看到以后只觉得:不过如此。不要在他人身上放诸过多的期望,是我在爱里学到的最重要的一课。没有谁会永远爱你,所以你只能爱自己。我初恋。是我们高中的风云人物。他是体育部部长,我管文学社。学生会周一开例会我们的手永远在桌子底下偷偷的拉着。那会儿他下课给我传过纸条放学陪我回家生日送我礼物,跟我从诗词歌赋聊到人生哲学。我是真的特别喜欢他。想起他就像偷藏了一块185cm又高又壮还会打篮球的糖。放学一起回家,趁着没有人的时候牵手,在他家楼道里偷偷接吻。害羞得抬不起头,眼球四周瞎转就不敢看向男主角。已经沸水冒泡壶嘴吐气壶盖冲起,心里的小人更是尖叫蹦跳激动的冲去报名马拉松。早晨醒来想起他都觉得今天是阳光明媚的星期六。高三他要去加拿大。彼时我根本不知道出国读书是什么概念,也没钱可以携巨款陪他去资本主义烧。我在机场哭哭啼啼 ...
C++ 函数重载
(┭┮﹏┭┮大一写的小水文,先放着摆个位置)
🌈函数默认参数
在C++中,函数的形参列表中的形参是可以有默认值的
语法 :返回值类型 函数名(行参=默认值){ }
注意:1.如果某个位置已经有了默认参数,那么这个位置后面都必须有默认值 2.如果函数声明有默认参数,函数实现就不能有默认参数;反之,实现有了,默认就不能有
12345678910111213141516#include<iostream>using namespace std;int func(int a,int b=20,int c=30) //在b后面的c必须有默认值,a可以不有 { return a+b+c;}int func1(int x,y)//函数声明不能再有默认参数即便是相同的值int func1(int x=1,y=2)//函数实现 { return x+y;}int main() { cout<<func(10)<<endl;//10+20+30 cout<<func(10,40)<< ...