自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(66)
  • 资源 (2)
  • 收藏
  • 关注

原创 JavaScript作用域的定义、原理及示例

词法作用域是指在代码编写的时候就确定了变量和函数的作用域,动态作用域是指在函数调用的时候才确定变量和函数的作用域。在词法作用域中, foo() 应该在自己的作用域中查找变量 bar,但是在动态作用域中,它会在调用它的函数 baz() 的作用域中查找变量 bar,所以它可以访问到 baz() 中的变量 bar。动态作用域的原理是在函数调用时,会将当前作用域压入一个作用域栈中,然后在函数内部查找变量时,会先从栈顶查找,如果找不到,就会继续向下查找,直到找到为止。

2024-04-01 17:10:35 314

原创 JavaScript之Class构造及继承的底层实现原理

其实现在也有这种担心,所以每篇文章都是用心完成,但也不敢完全保障没有失误的地方,如果有朋友发现,还请留言指出,我们也可以进行技术讨论。然而,在底层,JavaScript 仍然是基于原型的语言,class 只是一种更便捷的语法,其实现仍然依赖于原型继承。底层实现中,class 声明的类被转化为一个函数,构造函数的逻辑被放在了这个函数的 constructor 方法中,而类的方法则被添加到该函数的原型上。每个通过类创建的实例都拥有一个原型链,该原型链连接着该实例的原型和父类的原型。

2024-03-30 09:30:19 474

原创 JavaScript new一个对象的详细过程

JavaScript new一个对象的详细过程 new实现过程 new实现原理 new手写实现。最后返回this指向的新对象(如果是引用类型则返回引用类型,否则返回Objective)给空对象添加__proto__属性。执行构造函数对这个空对象进行构造。开辟一块内存,创建一个空对象。调用函数改变this指向。

2024-03-29 12:31:33 684

原创 JavaScript中的继承方式详解

组合继承结合了原型链继承和构造函数继承,通过调用父类构造函数设置实例属性,再通过将父类实例作为子类原型来实现。原型式继承通过创建一个空对象,然后将该对象作为参数传递给一个函数,该函数的原型被赋值为这个对象,从而实现继承。原型链继承是通过将子类的原型设置为父类的实例来实现继承。包含原型链继承、构造函数继承、组合继承、原型式继承、寄生式继承、寄生组合式继承和ES6 类继承。寄生式继承在原型式继承的基础上,增加了对父类构造函数的调用,从而可以传递参数给父类构造函数。解决了原型链继承中引用类型属性共享的问题。

2024-03-28 09:02:31 621

原创 JavaScript原型、原型对象、原型链系列详解(五)

同时,JavaScript原型设计模式还可以提高代码的可维护性和可扩展性,通过继承和复用原型对象的属性和方法,可以让代码更加灵活和易于扩展。JavaScript中的每个对象都有一个原型对象,通过将对象的属性和方法定义在原型对象上,可以让多个对象共享同一个原型对象,从而实现对象之间的继承和复用。基于构造函数和原型对象的实现方法:这种实现方法是JavaScript原型设计模式的经典实现方式,通过定义一个构造函数和一个原型对象,并将构造函数的prototype属性指向原型对象,就可以实现对象之间的继承和复用。

2024-03-27 09:03:11 447

原创 JavaScript原型、原型对象、原型链系列详解(四)

在访问 john 对象的属性时,它会先查找自身是否有该属性,然后会沿着原型链查找 Person.prototype 对象,最终查找到了 Object.prototype 对象。原型链是原型对象之间的连接,每个原型对象都有一个指向父级原型对象的指针,即Prototype属性。原型是函数的一个属性,它指向原型对象的引用。JavaScript中的原型、原型对象和原型链是密不可分的概念,它们之间构成了对象继承的基础。当我们创建一个子类时,它的原型对象指向父类的实例,从而实现了父类的属性和方法的继承。

2024-03-26 09:05:08 920

原创 JavaScript原型、原型对象、原型链系列详解(三)

因此,当我们调用 person.sayHello() 方法时,JavaScript 引擎会首先查找 person 对象本身是否有 sayHello 方法,如果没有,就会去它的原型对象 Person.prototype 上查找,如果还没有,就会去 Person.prototype 的原型对象 Object.prototype 上查找,以此类推,直到找到为止。这个链接的作用是如果对象本身没有某个属性或方法,就会去它的原型对象上找,如果还没有,就会去原型对象的原型对象上找,以此类推,直到找到为止。

2024-03-25 09:48:00 1180

原创 JavaScript原型、原型对象、原型链系列详解(二)

当我们调用 person 对象的 sayHello 方法时,JavaScript 首先会查找该对象本身是否具有该方法,由于 person 对象本身并没有该方法,因此 JavaScript 会查找 person 对象的 proto 属性指向的原型对象中是否具有该方法,如果有,就会调用该方法。当我们使用 Object 构造函数创建一个新的对象时,JavaScript 会自动为该对象创建一个原型对象,该原型对象会包含一些基本的属性和方法,例如 toString()、valueOf() 等。

2024-03-24 11:09:08 329

原创 JavaScript原型、原型对象、原型链系列详解(一)

当我们访问一个对象的属性或方法时,JavaScript 会先在该对象本身中查找,如果找不到,就会到该对象的原型对象中查找。如果找不到,就会返回 undefined。其中,Person 构造函数的原型对象包含了 name 和 sayHello 属性和方法,而 cat 对象是一个普通对象,它的原型对象是 Object.prototype。JavaScript 的原型机制在面向对象编程中发挥了重要的作用,它允许我们创建一个类或者对象的模板,然后通过继承来创建新的对象,从而大大减少了重复编写代码的工作量。

2024-03-23 12:13:28 904

原创 飞跃前端瓶颈:技术进阶指南精华篇

在互联网的快车道上,前端技术日新月异。书籍能够提供系统的知识结构和行业洞察,构建全面的知识体系,提升深度和广度。熟练掌握HTML、CSS、JavaScript基础,了解页面布局和响应式设计,熟悉至少一种主流前端框架。精通前端技术,关注性能优化和架构设计,具备团队管理和项目领导能力。深入研究前端技术,推动技术创新,具备丰富的项目管理和团队领导经验。对前端技术有深入理解,具备实战经验,了解前后端分离和构建工具。通过实际项目提升技术能力,参与开源项目,为社区贡献。针对技术短板,深入学习基础知识和新技术。

2024-03-21 21:42:30 523

原创 JavaScript小数运算精度丢失问题解决方案

JavaScript中的数值计算会存在精度丢失问题,这是因为JavaScript使用IEEE 754标准的浮点数表示法来表示数字,这种表示方法无法精确表示所有数字,特别是涉及到小数的时候。对于小数,前端出现问题的几率还是很多的,先把小数变成整数(乘倍数),再缩小回原来倍数(除倍数)判断两个数的小数位数,取其中较大的小数位数,将两个数都扩大相应倍数,转换成整数。对于整数,前端出现问题的几率可能比较低,只要不超过2^53就不会丢失精度。G|Z|H回复 1 可获取电子书。:因为数据太大,最大数2^53。

2024-03-21 07:58:15 367

原创 JavaScript隐式类型转换原理、优先级、规则及场景

另外,在进行字符串和数字类型的加法操作时,数字类型的值会被转换为字符串类型,然后进行字符串的拼接。需要注意的是,尽管JavaScript引擎能够自动执行隐式类型转换,但在编写代码时,最好还是尽可能地避免隐式类型转换,以减少代码的不确定性和错误。如果一个操作数是布尔值、null 或 undefined,另一个操作数是数字,则进行隐式类型转换为数字,如果另一个操作数是字符串,则执行"字符串拼接"原则。如果两个操作数的类型不同,则 JavaScript 会进行隐式类型转换,以使它们类型相同,并尝试进行比较。

2024-03-20 11:28:35 1381

原创 JavaScript数据类型及差异说明

在 JavaScript 中,基本类型的值是存储在栈内存的变量中,而引用类型的值则是存储在堆内存中的对象,变量实际上是对象的引用。因此,对于引用类型的值,变量存储的是对象的地址,而不是对象本身。存储:基本类型变量的值存储在栈内存中,引用类型变量存储在堆内存中,变量名存储在栈内存中,变量名指向对象在堆内存中的地址。赋值:基本类型变量的赋值是将一个值复制到变量中,而引用类型变量的赋值是将一个对象的引用复制到变量中。变量类型:基本类型的变量直接存储值,而引用类型的变量存储的是对象的引用。

2024-03-19 09:09:23 611

原创 JavaScript变量声明

let定义的变量会形成一个块级作用域,在for,if,while内部定义变量在外部无法进行访问.类似函数内部的变量,这也是形成闭包的一种方式。var定义的变量,只有在function当中定义外部无法访问,其他比如在for,if,while内部定义的都可以在外部进行访问。let不能进行变量的提升,不能进行变量的重复定义,也不能定义其他(var,const)方式已经定义过得变量。const不能进行变量的提升,不能进行变量的重复定义,也不能定义其他(var,let)方式已经定义过得变量。),一旦定义,不能修改。

2024-03-18 07:44:55 284

原创 基于Springboot+Vue的开源小项目 适合新手入门练习

主要包含医生信息、患者信息、挂号信息、药物信息、检查检验信息、病床信息及数据统计等功能。非常适合初级或是刚入门的同学当做学习资料。同时包含设计报告,需要毕业答辩的同学可以参考参考。SpringBoot + Vue + Element UI + mysql 技术栈。基于Springboot+Vue的开源小项目 适合新手入门练习。G|Z|H 回复 医疗 即可免费获取。

2024-03-17 21:35:33 733

原创 uniApp 小程序保存图片到本地实现方案

上述流程只是简单描述图片保存到手机相册的流程,生产环境还有记录下载次数、弹出广告等流程。壁纸、头像类型小程序保存需要支持用户可以保存图片到本地。

2024-03-16 08:34:36 916

原创 微信小程序隐私保护指引弹框实现(uniApp)

从 2023 年 9 月 15 日起必须用户点击同意隐私保护政策并同步给微信之后,开发者才可以调用微信提供的隐私接口。data函数声明变量showPrivacy,methods添加close方法。如有技术问题,可在公众号联系我或评论留意。微信公众平台更新用户隐私保护指引。配置manifest.json。

2024-03-15 09:10:25 1766 1

原创 javascript判断数据类型的方式以及优缺点

最标准的检测数据类型方法,toString是Object原型对象上的一个方法,并不是转为字符串,该方法默认返回其调用者的具体类型,更严格的讲,是toString运行时this指向的对象类型,返回的类型格式为[object,x],x是具体的数据类型,其中包括:String,Number,Boolean,Undefined,Null,Function,Date,Array,RegExp,Error,HTMLDocument,…也就是说,我们可以更改原型链的指向,导致检测数据类型不准确。

2024-03-14 12:26:47 360

原创 JavaScript数据类型

聊一聊JavaScript规定了几种数据类型。公众号回复 1 可获取电子书。

2024-03-13 09:08:24 137

原创 JavaScript规定了几种语言类型

let定义的变量会形成一个块级作用域,在for,if,while内部定义变量在外部无法进行访问.类似函数内部的变量,这也是形成闭包的一种方式。var定义的变量,只有在function当中定义外部无法访问,其他比如在for,if,while内部定义的都可以在外部进行访问。let不能进行变量的提升,不能进行变量的重复定义,也不能定义其他(var,const)方式已经定义过得变量。const不能进行变量的提升,不能进行变量的重复定义,也不能定义其他(var,let)方式已经定义过得变量。),一旦定义,不能修改。

2024-03-12 09:12:18 302

原创 Python爬取股票数据

目标网页-查询指定股票-分析network-找到接口-分析返回数据-读取数据。爬虫练习仅为学习,不做商用,如有侵权,烦请联系删除!依据股票代码爬取股票历史数据。

2024-03-11 13:05:17 566

原创 JavaScript基础(五)

通过使用 JavaScript,我们有能力做到在一个设定的时间间隔之后来执行代码,而不是在函数被调用后立即执行。我们称之为计时事件。注意: setInterval() 和 setTimeout() 是 HTML DOM Window对象的两个方法。所有 JavaScript 全局对象、函数以及变量均自动成为 window 对象的成员。当 web 服务器向浏览器发送 web 页面时,在连接关闭后,服务端不会记录用户的信息。window.screen对象在编写时可以不使用 window 这个前缀。

2024-03-08 15:48:40 884

原创 JavaScript基础(四)

转载:https://mp.weixin.qq.com/s/psWtgj2ePS2LvioddHLbcwJavaScript条件语句。

2024-03-07 09:18:25 230

原创 JavaScript基础(三)

转载:https://mp.weixin.qq.com/s/8c5Nm4k7cYvyR5MqluayFgJavaScript作用域、事件、this关键字、严格模式、错误类型。

2024-03-06 09:16:56 300

原创 JavaScript基础(二)

JavaScript语法 字面量、变量、操作符、关键字、数据类型、内置函数、内置对象。在指令式语言中,变量通常是可变的。字面量是一个恒定的值。整数或者是小数,或者是科学计数(e)。条件、比较运算符(== ===!== > < >= <=)JavaScript 是一个脚本语言,轻量及强大的编程语言。String、Number、Boolean是构造函数。用关键字var 来定义变量, 使用等号来为变量赋值。位运算符(& | ^ ~ >> << >>>>)null是关键字,类型为object。

2024-03-06 08:08:35 316

转载 JavaScript基础(一)

为什么学习JavaScript?JavaScript是什么?JavaScript用法及输出。

2024-03-05 09:13:35 48

基于uniApp技术栈的壁纸、头像类小程序源码

基于uniApp + UniCloud技术栈的壁纸头像类小程序源码 ### 功能 **隐私授权** **壁纸列表** **壁纸预览** **头像列表** **图片下载到本地相册** **流量主** banner、激励、插屏

2024-03-21

Python 爬取股票数据源码实现方案

Python 爬取股票数据源码实现方案

2024-03-19

空空如也

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

TA关注的人

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