javascript 的 属性、方法、事件

使用 javascript 设计一个学生类、(属性:ID、姓名、性别,方法:学习、休息、,事件:上学、放学、上课、下课)学校有定时器每1秒钟触发一次时钟事件,每节课45分钟,课间15分钟

var Student=function(ID){this.ID=ID;this.Name="noname";this.Sex=1;
}// 属性另1种实现方式
//Student.prototype.get_ID(){
//	return this._ID;
//}
//Student.prototype.set_ID(value){
//	this._ID=value;
//}//...
//Student.prototype.get/set_xxx(){
//	return this._xxx;/this._xxx=value;
//}
//...Student.prototype.Study=function(lession){//...
}Student.prototype.Rest=function(){//...
}//事件的推荐实现方式
var GotoSchoolEvent = new Event("GotoSchoolEvent", {"name":"上学事件"});
var GoHomeEvent = new Event("GotoSchoolEvent", {"name":"放学事件"});
var ClassIsStartEvent = new Event("GotoSchoolEvent", {"name":"上课事件"});
var ClassIsOverEvent = new Event("GotoSchoolEvent", {"name":"下课事件"});//---------------事件的另1种实现方式-------已被W3C标准弃用,浏览还支持------
// var GotoSchoolEvent = document.createEvent("HTMLEvents");
// var GoHomeEvent = document.createEvent("HTMLEvents");
// var ClassIsStartEvent = document.createEvent("HTMLEvents");
// var ClassIsOverEvent = document.createEvent("HTMLEvents");/* 
* 实例化创建好的事件对象
* 第一个参数:事件类型(就好像是click还是submit)
* 第二个参数:是否冒泡
* 第三个参数:是否阻止浏览器默认行为(例如阻止submit事件提交表单)
*/
// GotoSchoolEvent.initEvent("GotoSchoolEvent",true,true);
// GoHomeEvent.initEvent("GoHomeEvent",true,true);
// ClassIsStartEvent.initEvent("ClassIsStartEvent",true,true);
// ClassIsOverEvent.initEvent("ClassIsOverEvent",true,true);/* 给自定义事件对象的属性赋值。这个属性一开始不存在,我们这里将其实例化了 */
// GotoSchoolEvent.name = "上学事件";
// GoHomeEvent.name = "放学事件";
// ClassIsStartEvent.name = "上课事件";
// ClassIsOverEvent.name = "下课事件";
//-------------------------------------------------------------------------setInterval(()=>{var t=new Date();if(t.getHours()>=8 && t.getHours()<17 && !GotoSchoolEvent.IsGotoSchool){GotoSchoolEvent.IsGotoSchool=true;GoHomeEvent.IsGoHome=false;/* 触发自定义事件 */document.dispatchEvent(GotoSchoolEvent);  }if((t.getHours()<8 ||  t.getHours()>=17)&& !GoHomeEvent.IsGoHome){GoHomeEvent.IsGoHome=true;GotoSchoolEvent.IsGotoSchool=false;/* 触发自定义事件 */document.dispatchEvent(GoHomeEvent);  }if((t.getHours()>=8 && t.getHours()<17) && t.getMinutes()<=45 && !ClassIsStartEvent.IsClassStart){ClassIsStartEvent.IsClassStart=true;ClassIsOverEvent.IsClassOver=false;/* 触发自定义事件 */document.dispatchEvent(ClassIsStartEvent);         }if((t.getHours()>=8 && t.getHours()<17) && t.getMinutes()>45 && !ClassIsOverEvent.IsClassOver){ClassIsOverEvent.IsClassOver=true;ClassIsStartEvent.IsClassStart=false;/* 触发自定义事件 */document.dispatchEvent(ClassIsOverEvent);         }},1000)
//事件的响应函数
document.addEventListener("GotoSchoolEvent",function(e) {console.log("事件:" + e.name);
},false);
document.addEventListener("GoHomeEvent",function(e) {console.log("事件:" + e.name);
},false);
document.addEventListener("ClassIsStartEvent",function(e) {console.log("事件:" + e.name);
},false);
document.addEventListener("ClassIsOverEvent",function(e) {console.log("事件:" + e.name);
},false);

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

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

相关文章

13. Lammps入门in文件简介-1

来源&#xff1a; “码农不会写诗”公众号 链接&#xff1a;Lammps入门in文件简介-1 文章目录 01 in文件简介02 in文件命令解析规则 书回正文 Lammps通过一次一行地从输入脚本&#xff08;文本文件&#xff0c;通常称in文件&#xff09;中读取命令来执行计算&#xff0c;当输入…

7-1作业

1.实验目的&#xff1a;完成字符收发 led.h #ifndef __GPIO_H__ #define __GPIO_H__#include "stm32mp1xx_rcc.h" #include "stm32mp1xx_gpio.h" #include "stm32mp1xx_uart.h"//RCC,GPIO,UART初始化 void init();//字符数据发送 void set_tt…

Web端登录页和注册页源码

前言&#xff1a;登录页面是前端开发中最常见的页面&#xff0c;下面是登录页面效果图和源代码&#xff0c;CV大法直接拿走。 1、登录页面 源代码&#xff1a; <!DOCTYPE html> <html><head><meta charset"utf-8"><title>登录</ti…

Django 和 Django REST framework 创建对外 API

1. 环境准备 确保你已经安装了 Python 和 Django。如果尚未安装 Django REST framework&#xff0c;通过 pip 安装它&#xff1a; pip install djangorestframework 2. 创建 Django 项目 如果你还没有 Django 项目&#xff0c;可以通过以下命令创建&#xff1a; django-ad…

每日复盘-20240701

今日关注&#xff1a; 20240701 六日涨幅最大: ------1--------301182--------- 凯旺科技 五日涨幅最大: ------1--------300977--------- 深圳瑞捷 四日涨幅最大: ------1--------300977--------- 深圳瑞捷 三日涨幅最大: ------1--------300461--------- 田中精机 二日涨幅最…

Lua实现链表(面向对象应用)

Lua实现面向对象 面向对象核心三要素Lua面向对象大致原理面向对象示例继承与多态示例 面向对象核心三要素 1.封装&#xff1a;对一个事物的抽象为一些属性和行为动作的集合&#xff0c;封装将属性和行为动作&#xff08;操作数据的方法&#xff09;绑定在一起&#xff0c;并隐藏…

快钱支付股东全部股权已被质押!

根据近期工商信息&#xff0c;第三方支付机构快钱支付清算信息有限公司&#xff08;简称“快钱支付”&#xff09;实际控股方快钱金融服务&#xff08;上海&#xff09;有限公司&#xff08;简称“快钱金融”&#xff09;&#xff0c;作为出质股权标的企业&#xff0c;被出质给…

【SGX系列教程】(三)Intel-SGX 官方示例分析(SampleCode)——SampleEnclave

文章目录 一. 引言二. README2.1 项目目的2.2 构建和执行示例代码的步骤2.3 配置参数解释2.4 配置文件分析2.5 启动令牌初始化 三. 重点代码分析3.1 App文件夹3.1.1 App/App.cpp3.1.2 App/Edger8rSyntax文件夹3.1.2.1 App/Edger8rSyntax/Arrays.cpp3.1.2.2 App/Edger8rSyntax/F…

一文全概括,建议收藏,那些你不可错过的IC设计书籍合集(可下载)

集成电路设计工程师的角色不仅是推动技术创新的中坚力量&#xff0c;更是实现产品从概念到现实的关键桥梁。随着对高性能、低功耗芯片的需求不断增长&#xff0c;IC设计工程师的专业技能和知识深度成为了衡量其职业价值的重要标准。无论是在数字逻辑设计、功能验证、可测试性设…

JMeter--定时执行的方法

原文网址&#xff1a;JMeter--定时执行的方法_IT利刃出鞘的博客-CSDN博客 简介 本文介绍JMeter如何使用定时器定时执行测试任务。 Java技术星球&#xff1a;way2j.com 方法 第一步&#xff1a;新建定时器 右键测试任务> Add > Timer> Constant Timer 如下图所示…

qt中数据库和excel互导数据————附带详细步骤和代码

文章目录 0 背景1 准备QXlsx环境1.1 cmake安装使用1.2 qmake使用 2 把excel数据导出到mysql数据库3 把mysql数据库的数据写入到excel4 完整代码5 项目代码仓库 0 背景 因为需要批量导入和导出数据&#xff0c;所以需要用到excel。实现把数据库的数据导入到excel中&#xff0c;…

圆圈序号1~10复制粘贴直接用

1. 空心圆圈数字序号&#xff1a; ①、②、③、④、⑤、⑥、⑦、⑧、⑨、⑩ 2. 实心圆圈数字序号&#xff1a; ❶、❷、❸、❹、❺、❻、❼、❽、❾、❿ 3. 空心圆圈中文序号&#xff1a; ㊀、㊁、㊂、㊃、㊄、㊅、㊆、㊇、㊈、㊉

linux高级编程(线程)(1)

虚拟地址&#xff1a; 线程&#xff1a; 概念&#xff1a;线程是轻量级进程&#xff0c;一般是一个进程中的多个任务。 进程是系统中最小的资源分配单位。&#xff08;竞争计算机资源的最小单位&#xff09;&#xff08;进程能分配硬件资源&#xff0c;线程不行&#x…

解析QAnything启动命令过程

一.启动命令过程日志 启动命令bash ./run.sh -c local -i 0 -b hf -m Qwen-1_8B-Chat -t qwen-7b-chat。输入日志如下所示&#xff1a; rootMM-202203161213:/mnt/l/20230918_RAG方向/QAnything# bash ./run.sh -c local -i 0 -b hf -m Qwen-1_8B-Chat -t qwen-7b-chat From …

Leetcode Java学习记录——栈和队列 IDEA

文章目录 栈和队列stack Classqueue InterfaceDeque Interfaceadd 和 push Priority Queue -- Class题目 codestyleIDEA 操作快捷键选择代码生成类 栈和队列 stack Class google stack java 8/12 empty() peek() pop() push(E item) search(Object o) 最近相关性会用到栈 …

湘潭大学软件工程数据库总结

文章目录 前言试卷结构给学弟学妹的一些参考自己的一些总结 前言 自己可能很早很早之前就准备复习了&#xff0c;但是感觉还是没有学到要点&#xff0c;主要还是没啥紧迫的压力&#xff0c;我们是三月份开学&#xff0c;那时候实验室有朋友挺认真开始学习数据库了&#xff0c;…

理性决策的艺术:从购房到择偶的数学智慧;37% 规则,做出最佳决策的秘诀;用数学模型解决人生难题

在面对人生重大决策时&#xff0c;如购房或择偶&#xff0c;我们常常感到迷茫和困惑。然而&#xff0c;如果我们能够将这些看似复杂的问题简化为数学模型&#xff0c;我们就能以更加理性和系统的方式做出决策。 37%规则 1950年代&#xff0c;当时几位数学家开始研究这样一个问…

值得收藏!盘点那些适合普通人方便又好用的AIGC工具!(下)

【导读】接上一篇文章&#xff0c;盘点国内外适合普通人能够轻松上手的AIGC工具&#xff08;上&#xff09;。今天又为大家整理了一些好用又方便的AI设计工具、AI办公工具、AI编程工具、AI指令工具和AI检测工具&#xff0c;如果有没更新到的工具也欢迎大家评论区交流。 一 、A…

Kafka 入门指南

Kafka 入门指南 简介 Kafka 是一个由 Apache 软件基金会开发的开源流处理平台。它最初由 LinkedIn 开发&#xff0c;并在 2011 年作为开源项目发布。Kafka 是一个分布式、可扩展、高吞吐量的消息队列系统&#xff0c;广泛应用于实时数据流处理场景。 主要概念 1. 主题 (Top…

C#/WPF 自制截图工具

在日常使用电脑办公时&#xff0c;我们经常遇到需要截图然后保存图片&#xff0c;我们往往需要借助安装截图工具才能实现&#xff0c;现在我们通过C#自制截图工具&#xff0c;也能够轻松进行截图。 我们可以通过C#调用WindousAPI来实现截图&#xff0c;实例代码如下&#xff1a…