自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 收藏
  • 关注

原创 关于python的装饰器函数

在上面的例子中,我们定义了一个名为`decorator`的装饰器函数,它接受一个函数作为输入。装饰器本质上是一个函数,它接受一个函数作为输入,并返回一个新的函数作为输出。我们可以将装饰器理解为一个"包装器",它可以包装住另一个函数,并在不修改原函数定义的情况下对其进行扩展。需要注意的是,装饰器本质上是一个函数,因此我们在编写装饰器时,要遵循一些最佳实践。具体来说,我们可以创建一个装饰器函数,并在目标函数定义之前使用该装饰器。装饰器函数将会接受目标函数作为输入,并返回一个修改后的函数。

2023-07-15 19:06:18 47

原创 防抖和节流

(如果我们想在点击了按钮的1s内代码只会执行一次,这段代码显然是行不通的,1s内点击会多次触发函数)(这种情况下,用户每输入一个字符,函数 都会触发一次,比较浪费浏览器资源)(这段代码就实现一个基本的节流了,用户连续输入时,至多每秒触发一次函数)防抖:防止一个函数短时间内多次触发,希望在抖动结束前只会执行一次;节流:控制一个函数短时间的执行的次数;(如此,点击后1s内只能触发一次函数)

2023-06-24 14:02:22 40

原创 深拷贝和浅拷贝

1、浅拷贝:一个对象里面套了个对象等复杂数据类型,而这个复杂数据类型里又套了复杂数据类型,以此类推,浅拷贝只能拷贝这个对象里的第一层,里面的复杂数据类型无法拷贝(拷贝的只是原对象的地址而非数据本身,这种情况下操作会影响原数据)。2、深拷贝:与浅拷贝相对,不仅能拿到第一层数据,而且能拿到所嵌套的复杂数据类型,对拷贝数据的操作不会影响到原数据。总结:深浅拷贝作为面试提问的高频词,实现方法还是有意义的。方法3、Object.assign()浅拷贝。方法4、使用函数遍历原对象添加给新对象。方法2、JSON字符串。

2023-06-24 11:41:02 30

原创 this指向问题

以上就是常见的this指向问题了,而改变this指向可以用箭头函数、call、apply和bind等方式。2、事件处理函数中,this指向触发事件的元素。1、在全局函数中,this指向window。4、构造函数中,指向new时实例化的对象。this:每一个函数都会有这个关键字,3、箭头函数中,与上下文环境保持一致。5、在对象中,被谁调用就指向谁。

2023-06-24 10:35:10 27

原创 箭头函数的一些常见特点

4、不能用作构造函数:由于箭头函数没有自己的this值,也不能使用new关键字调用,所以不能用作构造函数。5、没有prototype属性:箭头函数没有prototype属性,因此不能使用箭头函数来定义原型方法。3、当函数形参只有一个时: () 可省略,代码只有一句时: 自动return 且 {} 可省略。1、没有自身的this,其this由所在环境决定(即this指向和上下文保持一致)以上就是箭头函数的一些常见特点,不得不说,在某些场景箭头函数还是很香的。(只能简写函数表达式,但不能简写声明式函数)

2023-06-24 10:02:15 50

原创 js以面向对象思想编写简单的选项卡案例

在添加类名实现效果之前需要先清除所有元素的类名,从而确保只有一个元素被添加了act类名,如果不清除,每点击一项之前点击的元素样式不会消失。(li元素的排列方式是通过定位层叠在一起,并且全部隐藏,随后通过点击上方的导航将指定的li进行展示 )2、这时的this.ele就是上面的获取到的母盒子,我们可以通过此获取上面的子元素,进而进行操作。而用let定义变量是因为let的块级作用域可以使每一个导航条的元素能被分别点击。(这是添加act后导航条样式的变化,以及让对应的展示区域显现)(直接丑哭我自己好吗)

2023-06-10 19:48:14 68

原创 flex 弹性盒子布局:多行情况下最后一行左对齐

默认值为: flex:0 1 auto;有剩余空间就放大,空间不够就缩小,项目长度为原本的长度。属性定义了在分配多余空间之前 项目占据的主轴空间(相当于我们设置的width)属性定义了项目的缩小比例 默认为1 即如果空间不足 该项目将缩小。属性定义项目的放大比例 默认为0 即如果存在剩余空间 也不放大。有剩余空间就放大,空间不够就缩小,项目长度为0。使用 Grid布局 (号称地表最强的CSS布局方案)根据内容的大小来分,而非平的(只有内容一样,才会平分。是复合属性 是添加给子元素的。首先情况如下(图.1)

2023-02-24 20:38:41 382

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除