HTML---JAVAscript对向和原型链

文章目录

  • 前言
  • 一、pandas是什么?
  • 二、使用步骤
    • 1.引入库
    • 2.读入数据
  • 总结


前言


一.JavaSceipt对象概述

        JavaScript是一种基于对象的编程语言,每个值都是一个对象。JavaScript中的对象是一种无序的键值对集合,其中每个键都是唯一的。

        JavaScript的对象可以包含属性和方法。属性是对象的特性,可以通过点语法或方括号语法访问。方法是对象的行为,是一种可以在对象上调用的函数。

JavaSceipt对象分类

  1. 内置对象(Built-in Objects):内置对象是JavaScript提供的一些预定义对象,比如Array、String、Math等。这些对象可以直接使用,无需额外的操作。

  2. 宿主对象(Host Objects):宿主对象是由JavaScript的宿主环境(比如浏览器、Node.js等)提供的对象。这些对象通常是用来访问宿主环境特定功能的,比如浏览器提供的window、document对象。

  3. 自定义对象(Custom Objects):自定义对象是由开发者自己定义的对象。开发者可以使用JavaScript的构造函数或者类语法来创建自定义对象。

  4. 原生对象(Native Objects):原生对象是指那些由JavaScript语言本身提供的对象,比如Object、Function、Date等。

  5. 传统对象(Traditional Objects):传统对象是指那些以键值对形式存储数据的对象,比如普通对象、数组、Map、Set等。

  6. 迭代器对象(Iterator Objects):迭代器对象是那些实现了迭代器接口的对象,可以通过next()方法迭代访问其中的元素。比如数组的迭代器对象可以通过for...of循环来遍历数组的元素。

  7. 原型对象(Prototype Objects):原型对象是用来创建其他对象的模板对象,通过原型链的机制,可以使原型对象中的属性和方法被其他对象共享。

二.Javascript对象详解

自定义对象

自定义对象是由开发者自己定义的对象。开发者可以使用JavaScript的构造函数或者类语法来创建自定义对象。

  •  使用对象字面量创建对象

语法:

<script>var flower = new Object();
</script>

 演示案例

<body><script>var flower = new Object();//对创建的自定义对象属性进行赋值flower.name="长春花";flower.genera="夹竹桃科";flower.area="非洲";flower.uses="观赏或用药等";//创建专属于自定义对象的方法flower.showNmae = function(){window.alert(this.name);}//调用自定义对象的方法flower.showNmae();</script>
</body>

  •  使用构造函数创建对象

原理:创建一个构造函数用于临时存放对应函数的属性值,参数等, 在使用new关键字调用时将新函数的属性值赋值给构造函数,再根据代码调用对应的属性值。

语法:

<script type="text/javascript">function Flower(自定义参数){}
</script>
  • 演示案例 
<body><script type="text/javascript">//构造函数function Flower(name,genera,area,uses){//创建自定义对象属性并赋值this.name=name;this.genera=genera;this.area=area;this.uses=uses;//创建自定义对象的方法并指向下方一个函数this.showNmae=showNmae;}function showNmae(){window.alert(this.name);}//创建自定义函数var flower1 = new Flower("长春花","夹竹桃科","非洲","观赏或药用等")//调用自定义函数flower1.showNmae();</script>
</body>

常用关键字
instanof判断左边的类型是否为右边的关键字
window.alert(flower1 instanceof Object);
window.alert(flower1 instanceof Flower);

 三.原型链

JavaScript中的原型链是一种机制,它允许对象通过继承属性和方法。每个JavaScript对象都有一个原型对象,该对象充当对象的“父类”,以便对象可以从其原型对象中继承属性和方法。

原型链的作用

  1. 继承属性和方法:JavaScript中的对象可以通过原型链访问其原型对象的属性和方法。这样,可以在一个对象上定义一组共享的属性和方法,然后让其他对象继承它们,从而实现代码的重用和模块化。

  2. 属性和方法查找:当访问一个对象的属性或方法时,JavaScript引擎首先在对象本身查找,如果找不到则会继续在原型对象上查找。如果还找不到,就会继续在原型对象的原型对象上查找,以此类推,直到找到相应的属性或方法或到达原型链的末端。这种机制使得对象可以继承多层属性和方法,并且可以实现属性和方法的覆盖。

  3. 扩展对象:通过原型链,可以向一个对象添加新的属性和方法,从而扩展对象的功能。只需要将新属性和方法添加到原型对象上,所有继承了该原型对象的对象都会自动具有这些新的属性和方法。

  4. 原型继承:JavaScript中的原型链机制实现了一种简单的继承模型,通过将一个对象设置为另一个对象的原型对象,可以使后者继承前者的属性和方法。这种继承方式可以实现代码的复用和扩展。

演示案例

<body><script type="text/javascript">//创建继承的对象function Flower(){}//为自定义函数创建原型函数Flower.prototype.name = "曼陀罗花";Flower.prototype.genera = "曼陀罗属";Flower.prototype.uses = "观赏或药用";Flower.prototype.area = "印度";Flower.prototype.showNmae=function(){alert(this.name);}Flower.prototype.showarea=function(){document.write(this.area);}//创建需要继承的自定义对象var flower1 = new Flower();flower1.showNmae();var flower2 = new Flower();flower2.showarea();
</script>

 

 

 


练习

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/624697.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

复习python从入门到实践——文件和异常

复习python从入门到实践——文件和异常 目录 复习python从入门到实践——文件和异常1. 打开文件Syntax读取多个文件 2.写入文件.write()写入空文件 w附加到文件 a 3.异常总结 1. 打开文件 Syntax 步骤 创建txt文档 提供文档路径file path with open(file path) as file_object…

浅析Pe2shellcode

编者注&#xff1a;本文仅供学习研究&#xff0c;严禁从事非法活动&#xff0c;任何后果由使用者本人负责。 前言 众所周知&#xff0c;对shellcode免杀是很流行的技术&#xff0c;但是直接对exe的免杀方法相对稀缺&#xff0c;如果我们能将exe转为shellcode&#xff0c;然后用…

基于ssm的中文学习系统的设计与实现+jsp论文

摘 要 现代经济快节奏发展以及不断完善升级的信息化技术&#xff0c;让传统数据信息的管理升级为软件存储&#xff0c;归纳&#xff0c;集中处理数据信息的管理方式。本中文学习系统就是在这样的大环境下诞生&#xff0c;其可以帮助管理者在短时间内处理完毕庞大的数据信息&am…

【vue】nextTick的使用

简言 nextTick是Vue等待下一次 DOM 更新刷新的工具方法。 当我们更新dom数据后&#xff0c;需要在后面立即获取更新后的页面数据&#xff0c;就可以使用它。 nextTick 当你在 Vue 中更改响应式状态时&#xff0c;最终的 DOM 更新并不是同步生效的&#xff0c;而是由 Vue 将它…

电脑桌面便签在哪设置?备忘录软件哪个好?

好记性不如烂笔头&#xff01;相信很多打工族在电脑面前办公的时候&#xff0c;都需要随时记录工作中的事项&#xff0c;有的用TXT记录&#xff0c;有的手写笔记&#xff0c;还有一些用电脑桌面便签类软件。而当我们待办事项繁多的时候&#xff0c;手写或文本记录并不能有效帮我…

Hive窗口函数整理

Hive 中的窗口函数允许你在结果集的一个特定“窗口”内对行进行计算。这些窗口可以是物理的&#xff08;基于行在数据中的实际位置&#xff09;或逻辑的&#xff08;基于行的一些排序标准&#xff09;。窗口函数在处理排名、计算累计和或计算移动平均值等问题时特别有用。 以下…

外贸自建站推广为何首选谷歌广告?谷歌广告的优势在哪?

投放付费广告&#xff0c;是短时间内扩大品牌曝光&#xff0c;同时快速成单的有效方式之一。很多外贸自建站卖家都有投放付费广告的意识&#xff0c;但在广告平台的选择&#xff0c;却往往是较为犹豫的。 谷歌广告是外贸自建站可选择的推广方式之一&#xff0c;那么为什么说是…

去不了哈尔滨? 来看这里VR全景线上云体验

如果你无法亲自前往哈尔滨&#xff0c;那么不要失望&#xff0c;因为现在有一种全新的方式让你在家就能领略到哈尔滨的美丽景色。 冰城客户端、哈尔滨新闻网承办的“激情迎亚冬 冰雪暖世界——2024年哈尔滨冰雪乐园” 运用720云VR打造的沉浸式体验产品正式上线&#xff0c;将带…

[我的Rust库更新]get_local_info 0.2.3

今天收到西安城市开发者社区的文章收录通知&#xff0c;谢谢社区的肯定。 随即发布0.2.3版本&#xff0c;增加峰值算法。 get_local_info是一个获取linux本地信息的Rust三方库&#xff0c;其目标是降低获取本地linux系统信息的难度。支持银河麒麟10、UOS、鸿蒙等国产系统。 项…

利用HTML和CSS实现的浮动布局

代码如下 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title><style>*{m…

MPU机制与实现详解

目录 MPU机制与实现详解 Partition元素-MPU Partition实现元素OSApplication Partition元素-RTE MPU机制与实现详解 1、freedom from interference 此概念来自ISO26262-1&#xff1a;多个元素之间没有可能导致违反安全目标的级联故障&#xff0c;称之为免于干涉。 在左侧的…

案例129:基于微信小程序的外卖商城平台设计与实现

文末获取源码 开发语言&#xff1a;Java 框架&#xff1a;SSM JDK版本&#xff1a;JDK1.8 数据库&#xff1a;mysql 5.7 开发软件&#xff1a;eclipse/myeclipse/idea Maven包&#xff1a;Maven3.5.4 小程序框架&#xff1a;uniapp 小程序开发软件&#xff1a;HBuilder X 小程序…

多个promise调用顺序,javascript引擎的微任务和队列任务,promise(三)

多个异步函数的调用顺序:运行代码得到的结果是p1,p2,p4,p3 const p1 new Promise((resolve, reject) > reject(Error(p1抛出的错误))).catch(error > console.log(error))const p2 new Promise((resolve, reject) > reject(Error(p2抛出的错误))).catch(error > …

pybind11实现numpy和OpenCV Mat的数据交互

1、编译安装pybind11 下载源代码&#xff1a;https://github.com/pybind/pybind11&#xff0c; 文档&#xff1a;https://pybind11.readthedocs.io/en/stable/compiling.html 解压后进入到命令行&#xff0c;如果有conda环境&#xff0c;就先进入想要的conda环境&#xff0c…

Poi实现根据word模板导出-文本段落篇

最近在做word模板导出的需求&#xff0c;本来意为是很简单&#xff0c;做起来才发现细节上有很多东西处理起来还是比较麻烦的&#xff08;客户要求太多&#xff01;&#xff01;&#xff01;&#xff09; 因此我把涉及到基于word模板导出的这部分整理了一下&#xff0c;大家直…

2024年,前端开发者,不妨看看鸿蒙开发

从大环境也好&#xff0c;行业发展也好&#xff0c;过去10年的前端技术晋级路径已经彻底失效。我在去年看了一眼考公的职位&#xff0c;没有任何一个岗位可以由前端胜任&#xff0c;而如果在后端领域比较资深的话&#xff0c;进可以做技术咨询&#xff0c;退可以考架构公务编。…

【基于 InternLM 和 LangChain 搭建你的知识库】学习笔记

学习参考文档【基于 InternLM 和 LangChain 搭建你的知识库】 学习参考链接【书生・浦语大模型实战营第三课作业(基础进阶)】 理论 实战 收集原始数据 收集2018年-2020年几年间的优秀数学建模论文 修改脚本文件&#xff0c;测试文件 作业 复现课程知识库助手搭建过程 La…

JavaScript程序员必须具备的10个技能

JavaScript程序员必须具备的10个技能&#xff1a; 1. 基础语法&#xff1a;理解并能够运用JavaScript的基础语法&#xff0c;包括变量、数据类型、运算符、控制流语句、循环和数组等。 2. 函数&#xff1a;能够编写和重用函数&#xff0c;理解函数的作用域和闭包&#xff0c;以…

通信扫盲(四)

系列文章目录 1 通信扫盲&#xff08;一&#xff09;&#xff1a; 通信的本质、通信发展史-各代移动通信的多祉技术、5G、6G应用场景/愿景、LTE是什么&#xff1f;3GPP是什么&#xff1f; 链接&#xff1a;通信扫盲&#xff08;一&#xff09; 2 通信扫盲&#xff08;二&…

「HDLBits题解」Popcount255

本专栏的目的是分享可以通过HDLBits仿真的Verilog代码 以提供参考 各位可同时参考我的代码和官方题解代码 或许会有所收益 题目链接&#xff1a;Popcount255 - HDLBits module top_module( input [254:0] in,output reg [7:0] out );integer i ; always (*) beginout 0 ;for…