JS高级(未完)

JS基础重点知识实验总结() JS基础知识总结 JS代码引入的注意问题: 在一对script标签中存在错误的js代码,那么该代码后面的js将不会执行 如果第一对script标签中的js代码有错误,但不会影响下一对script标签中的js代码的执行。 当html遵循h5的版本时,script标签中的type=“text/JavaSc... 阅读详情

实例对象与构造函数的关系?

实例对象通过构造函数创建。

 

通过构造函数创建实例对象的缺点是什么?

 

通过相同构造函数创建的对象,调用的函数相同,但比较它们的方法,结果是不相等的,说明这两个方法不是同一个方法或者说这两个方法指向的不是同一个地址,会浪费内存空间。

原因在于eat被赋值的是一个匿名函数,若换成命名函数,结果便是相同的。

但这样重新创建一个命名函数,就会存在函数名与其他变量名冲突的情况,为了避免这样的情况,使用原型来解决这个问题,即原型可以共享数据。

 

------------------------------------------------------------------

在实例对象中有__proto__属性(IE8不支持此属性),类型是对象,不是标准属性,供浏览器使用的。

 

-------------------------------------------------------------------

在构造函数中有prototype属性,类型是对象,是标准属性,供程序员使用的。

 

 

--------------------------------------------------------------------

因为prototype的类型是对象,通过这个对象共享属性和方法,还可以写成

这样的写法,需要手动指明constructor构造器。

 

----------------------------------------------------------

构造函数,实例对象,原型对象

构造函数可以实例化对象

构造函数中有一个属性叫prototype,指向构造函数的原型对象(原型对象是一种概念,你可以理解成{}大括号,只是它用prototype属性描述,具有共享数据的特性)。

构造函数的原型对象中有一个constructor构造器,指向自己的构造函数。

实例对象的(__proto__)指向的是构造函数的prototype。

构造函数的(prototype)中的方法可以有实例对象直接访问。

 

------------------------------------------------

原型中的方法是可以相互访问的。

------------------------------------------------------------

当构造函数与原型对象中出现了相同的属性和方法时,优先使用构造函数中。

 

 

------------------------------------------------------------------------

原型链:实例对象和原型对象之间的关系,通过_proto__属性联系起来

 

改变prototype的指向

 

在创建对象之前,默认是将构造函数中的prototype指向了原型对象,如上图在创建学生对象之前,将Student构造函数的prototype指向了原型对象{}

当前的stu实例对象中是没有任何方法的,原型对象也没有任何方法,所以调用eat方法回报错。

 

若要改变原型的指向,只要将构造函数的prototype 指向非当前构造函数的prototype即可。

这时,相当于stu实例对象拥有了Person的prototype对象中的方法和属性,但自身的Student的prototype中的方法将不属于自身,相当于切断了关系。

---------------------------------------------------------------------

也可以通过间接的方式指向其他的实例对象。

更准确的说:

Stu实例对象的__proto__属性指向自身构造函数的prototype,但自身的prototype指向了Person的实例对象中的__proto__,而Person实例对象中的__proto__指向的是Person的prototype.

---------------------------------------------------------

那么如何为自身添加方法呢?

只要你改变prototype指向之后,再在prototype上添加方法即可。

 

---------------------------------------------------------------

若使用如下方法,将是对对象进行覆盖。

这里prototype.eat 相当于如下图。

显然,重新赋值,会将之前的对象覆盖。

 

 

原型链的基本形式是:

实例对象的__proto__--->构造函数的prototype,中的对象

构造函数的prototype中的__proto__ --->Object的prototype中的对象

Object的prototype中的__proto__--->Null的prototype中的对象

 

-----------------------------------------------------------------

继承

继承的实质是改变原型的指向。

例子:人都有姓名,性别,年龄,吃饭,行走,睡觉

         学生具有人的一切特性,那么学生可以继承人,学生还有自己特性。

这里stu.prototype指向学生的实例,连同学生构造函数的属性都会被继承。

但如果这么做的话,多创建几个stu对象,在new Person()传递参数时,已经写死,所有创建的学生对象都叫lvan,如何解决该呢?

 

组合继承(借用构造函数+改变原型指向)

在Student构造函数中通过call的方法,以当前学生对象的名义调用person函数,这样在创建学生对象的时候,就可以初始化各自参数了。另外在建立人与学生的联系时,只要new Person()不传递任何参数即可。此方法称为组合继承。

 

----------------------------------------------------------------------------

拷贝继承

JS中DOM重点基础知识实验(全) 文档:一个页面就是一个文档。 元素:页面中所有的标签都是元素,也可以叫对象。 节点:页面中所有的内容都是节点,标签,属性,文本。 在JS中操作dom,设置css样式时,样式的名称如background-color,在js中一律用驼峰写法,backgroundColor 通过JS设置元素行内样式,操作style属性即可 通过JS设置元素的类样式,不用c... 阅读详情

相关推荐

参数估计Picard迭代在非线性常微分方程参数估计中的应用研究(Matlab代码实现)

内容概要:本文系统研究了Picard迭代法在非线性常微分方程参数估计中的应用,深入阐述了该方法的数学原理及其在参数辨识中的收敛性与稳定性优势。通过构建最小化误差的目标函数,并结合数值积分技术,采用迭代方式逐步逼近系统的真实参数值,有效解决了非线性动态系统中因缺乏解析解而难以进行精确建模的问题。文中提供了完整的Matlab代码实现,涵盖模型定义、迭代求解、参数更新与结果可视化等关键环节,增强了方法的可操作性与工程实用性。研究通过典型非线性系统案例验证了算法的有效性,展示了其在科学计算与工程建模中的良好适应性与推广潜力。; 适合人群:具备常微分方程理论、数值分析基础及Matlab编程能力,从事系统建模、参数辨识、动力学仿真等相关方向的研究生、科研人员和工程技术开发者。; 使用场景及目标:①解决实际工程中非线性微分方程模型的未知参数估计问题;②深入理解Picard迭代法在科学计算中的实现机制与数值特性;③为学术论文复现、科研项目开发或课程设计提供可运行、易调试的技术方案与代码参考。; 阅读建议:建议读者结合文中的数学推导与Matlab代码逐行分析,重点关注迭代流程、目标函数构造与数值积分的耦合实现,通过修改模型结构或噪声条件进行扩展实验,以深化对算法鲁棒性与适用边界的理解。配套资源可通过指定公众号和网盘链接获取,推荐同步学习以加速科研进程。

javascript高级 es6知识点汇总(未完持续更新)

//set意为集合,所有的自定属性

hlonelier的博客 183

XYF.SHX

XYF.SHX

《JavaScript高级程序设计》总结——第十章总结(未完成勿看)

第十章 DOM 10.1 node类型(共12种,任何节点必居其一) (1)、node12种类型 Node.ELEMENT_NODE(1); Node.PROCESSING_INSTRUCTION_NODE(7); Node.ATTRIBUTE_NODE(2); Node.COMMENT_NODE(8); Node.TEXT_NODE(3); Node.D...

是喵喵酱呀! 420

《JavaScript高级程序设计》中关于浏览器兼容性的总结 未完待续~~~

这里呢主要是对《JavaScript高级程序设计》这本书中关于浏览器兼容性问题的一个总结,有于书中关于浏览器兼容的介绍比较分散,所以一叽咕进行了归纳,写到这里面来,方便进行查阅。此外,本系列博文还会记录一些跨浏览器的方法,比如跨浏览器进行事件绑定。   1、支持严格模式的浏览器包括 IE10+、 Firefox 4+、 Safari 5.1+、 Opera 12+和 Chrome。 (1...

天蝎的毒刺 201

《JavaScript高级程序设计》总结——第13章总结(未完成勿看)

一、事件流 1、什么叫事件流 描述的是从页面接收事件的顺序; 2、事件冒泡(放心用,都支持) 事件开始由最具体的元素接收,然后逐级向上传播到较为不具体的节点; 3、事件捕获 事件开始由不太具体的元素接收,然后向下逐级传递给最具体的元素; 4、DOM2级事件流 DOM2级事件流规定三个阶段:事件捕获阶段、出于目标阶段、时间冒泡阶段(规定的是事件捕获阶段不涉及时间目标,但是实际情况中所有...

是喵喵酱呀! 315

js高级程序设计第八章BOM(未完成,待续)

8.1window对象 BOM的核心对象是window,表示浏览器的一个实例。 window对象有双重角色,既可以通过就是访问浏览器窗口的接口,又是ECMAscript规定的Global对象 8.1.1全局作用域 定义全局变量与在window对象上直接定义属性的差别在于全局变量不能通过delete操作符删除,而直接子啊window对象的定义的属性可以 常识访问未声明的变量会抛...

weixin_30699463的博客 75

解决wkhtmltopdf JavaScript执行问题:延迟加载与回调处理

你是否在使用wkhtmltopdf(WebKit HTML转PDF工具)时遇到过动态内容渲染不完整的问题?当页面包含复杂JavaScript(JS)逻辑(如API调用、DOM操作、数据可视化)时,生成的PDF往往缺失部分内容或显示空白。本文将系统解析JS执行异常的根本原因,提供基于`--javascript-delay`和`--window-status`的完整解决方案,并通过12个实战案例覆盖9...

gitblog_00415的博客 644

Mock.js + Vue 前端开发实战:手把手教你模拟接口数据

通过 Mock.js,前端开发人员可以在后端接口未完成的情况下继续开发,大大提高了开发效率。本文通过 Vue 和 Mock.js 的结合,展示了如何模拟接口数据并进行页面开发。希望这篇文章能帮助你在实际项目中快速上手 Mock.js。如果你有任何问题或需要进一步的指导,请随时留言!

bairuoqing的专栏 1308

react-pdf-js核心解析:usePdf钩子函数的参数配置与实战技巧

react-pdf-js是一个轻量级的React组件库,专为在React应用中高效渲染PDF文档而设计。其核心功能通过usePdf钩子函数实现,提供了简洁而强大的PDF处理能力,帮助开发者轻松集成PDF查看功能到React项目中。 ## 一、usePdf钩子函数的基础参数详解 usePdf钩子函数是react-pdf-js的核心,位于[packages/react-pdf-js/src/ind

gitblog_00437的博客 444

前端Mock数据开发指南

前端Mock数据开发指南Mock数据是前端开发中模拟后端接口数据的重要技术,可以让你在后端接口未完成时独立进行前端开发。以下是前端Mock数据的常用方法和工具:常用Mock数据方案。

人工智能全栈工程师 | 智能算法研发与实战落地​专注于人工智能算法研究、代码实现与工程落地,提供从模型设计到部署应用的全流程解决方案。 495

ES6常见语法特性实例

Let基本特性。 (1)let声明的变量不存在预解析。即不可以再定义变量之前,使用变量。 1. 预解析,在这里,相当于 执行结果: 2. 执行结果: (2).let 不可以重复声明一个变量(同一作用域)。 1. 执行结果:不会报错 2. 执行结果: (3).let声明的变量会产生块级作用域(一般不同的作用域是用{}隔...

lvanboy的博客 646

无关系组件通信

# com1 this.$bus.$on('foo',handle) # com2 this.$bus.$emit('foo',args)

lvanboy的博客 316

焊接变位机_1.rar

焊接变位机_1.rar

基于多尺度集成极限学习机回归(Matlab代码实现)

内容概要:本文详细介绍了一种基于多尺度集成极限学习机(Extreme Learning Machine, ELM)的回归方法,并提供了完整的Matlab代码实现。该方法通过构建多尺度特征表示与集成学习机制,有效提升了ELM在处理非线性、高维复杂数据时的预测精度与模型鲁棒性,特别适用于时间序列回归任务。文档不仅阐述了算法的核心原理与技术流程,还系统展示了其在风电功率预测等工程场景中的应用潜力。同时,文中附带了丰富的科研仿真案例集合,涵盖智能优化算法、深度学习、信号处理、电力系统调度等多个前沿方向,体现了多学科交叉融合的技术优势与实践价值。; 适合人群:具备一定Matlab编程能力,从事科学研究或工程应用的研究生、科研人员及工程技术开发者,尤其适合专注于机器学习、智能算法优化、新能源预测与电力系统建模等相关领域的专业人员。; 使用场景及目标:①用于风电、光伏、负荷等时间序列数据的高精度回归预测任务;②为科研工作者提供可复现的多尺度集成ELM模型代码框架,支持快速算法验证与二次开发;③满足实际工程项目中对高效建模、实时预测与智能决策的技术需求。; 阅读建议:建议读者结合所提供的Matlab代码进行动手实践,深入理解多尺度特征构造与集成策略的设计思想,同时可参考文档中其他相关算法案例进行横向比较与综合应用,以提升整体科研创新能力。

精密钟表配件叉片插针组装机 -原创设计.rar

精密钟表配件叉片插针组装机 -原创设计.rar

上一篇: JS中DOM重点基础知识实验(全)
下一篇: 无关系组件通信
lvanboy
博客等级 码龄9年 55粉丝 12原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值