JavaScript_Pig Game重置游戏

news2024/11/20 9:12:07
//重置游戏
btnNew.addEventListener('click', function () {
  score0El.textContent = 0;
  score1El.textContent = 0;
  current0El.textContent = 0;
  current1El.textContent = 0;
  player0El.classList.remove('player--winner');
  player1El.classList.remove('player--winner');
  player0El.classList.add('player--active');
  player1El.classList.remove('player--active');
});

我们直接通过点击事情,将这些变为0即可,但是这些参数不仅仅是当我们点击这个重置按钮的时候会用到,再刚开始加载也会用到,所以我们把它存到函数中

let scores, currentScore, activePlayer, playing;
//开始游戏
const init = function () {
  scores = [0, 0];
  currentScore = 0;
  activePlayer = 0;
  playing = true;

  score0El.textContent = 0;
  score1El.textContent = 0;
  current0El.textContent = 0;
  current1El.textContent = 0;
  diceEl.classList.add('hidden');
  player0El.classList.remove('play--winner');
  player1El.classList.remove('play--winner');
  player0El.classList.add('player--active');
  player1El.classList.remove('player--active');
};

init();

在这里插入图片描述

在这里插入图片描述

上面代码的几个注意事项:

  1. let scores, currentScore, activePlayer, playing;必须在函数外部声明变量,否则无法在其他地方使用这些变量;
  2. scores、currentScore、activePlayer 和 playing 这四个变量在 init 函数外部声明为全局变量。在 init 函数内部,我们对这些全局变量进行了赋值。然后,在 其他函数中,我们可以直接访问和使用这些全局变量的值。
  3. init函数必须要声明才能使得函数代码块里面的代码生效!

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

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

相关文章

理解android AIDL

理解Android AIDL 在研究了 Android Frameworks 中进程间通信(IPC)相关的一些程序后,了解到 Android 系统中进程间通信的机制绝大部分就是 Binder,主要表现在系统服务的调用,app进程间功能调用等。而 Android 上实现 …

基于机器视觉的银行卡识别系统 - opencv python 计算机竞赛

1 前言 🔥 优质竞赛项目系列,今天要分享的是 基于深度学习的银行卡识别算法设计 该项目较为新颖,适合作为竞赛课题方向,学长非常推荐! 🧿 更多资料, 项目分享: https://gitee.com/dancheng…

Leetcode刷题详解——按摩师

1. 题目链接:面试题 17.16. 按摩师 2. 题目描述: 一个有名的按摩师会收到源源不断的预约请求,每个预约都可以选择接或不接。在每次预约服务之间要有休息时间,因此她不能接受相邻的预约。给定一个预约请求序列,替按摩师…

华泰证券:新奥能源:零售气待恢复,泛能与智家仍是亮点

来源:猛兽财经 作者:猛兽财经 猛兽财经获悉,由于新奥能源(02688)发布三季度经营数据: 1-3Q23:天然气零售量yoy-4.7%,燃气批发量yoy17.6%,综合能源销量yoy34.2%&#xff…

基于SpringBoot的社区医院管理系统设计与实现

目录 前言 一、技术栈 二、系统功能介绍 管理员功能实现 用户信息管理 病例信息管理 家庭医生管理 药品信息管理 三、核心代码 1、登录模块 2、文件上传模块 3、代码封装 前言 信息数据从传统到当代,是一直在变革当中,突如其来的互联网让传统的…

中科驭数亮相2023中国移动全球合作伙伴大会

10月11-13日,2023中国移动全球合作伙伴大会开幕。中科驭数作为移动云COCA生态合作伙伴,受邀出席“算网融百业数智赢未来”政企分论坛,高级副总裁张宇上台参与移动云OpenCOCA开源项目和《OpenCOCA白皮书》的重磅发布仪式,助力构建未…

CS224W3.3——整图Embedding

在某些情况下,重要的是不仅要学习节点的嵌入,还要学习整个图。在这篇中,我们介绍了几种可以有效地学习整个图嵌入的方法,包括节点嵌入的聚合(aggregation of node embeddings),以及匿名行走嵌入…

Sketch mac 98.3(矢量绘图设计软件)

Sketch是一款专为Mac设计的矢量图形编辑软件,被广泛应用于UI/UX设计、网页设计、移动应用设计等领域。Sketch提供了各种工具和功能,包括绘图、图形设计、排版等,可以帮助设计师轻松地创建高质量的矢量图形和模型。Sketch的主要特点包括&#…

Selenium3-当元素通过@FindBy获取时,返回元素为null

报错: 在获取元素的js属性时一直获取不到,报空指针,定位到元素时,发现是FindBy的元素没有找到 解决方法: 在page类的构造函数中加上了 界面初始化,让元素先隐式加载,这样就不会出现返回元素为空的情况辣 PageFactory…

瑞萨RH850-P1X ECM和英飞凌TC3xx SMU对比

1.1 基本结构 P1X ECM(Error Control Module)收集从不同的错误源和监控电路发来的错误信号,并通过error pin(ERROROUTZ)对外输出、产生中断并发出ECM reset信号。 P1x-C系列根据产品型号不同,ECM个数也不相同,如下: 对应寄存器基地…

高效合并视频剪辑:批量操作,省时省力,提高效率

在视频制作领域,合并视频剪辑是一个必不可少的环节。然而,逐个合并视频文件不仅费时且效率低下,还容易出现错误。通过批量操作的方式,可以一次性处理多个视频文件,大大节省了时间和精力,提高了工作效率。本…

【文件存储服务器】Minio使用

文章目录 2.2 Minio使用2.2.1 Minio介绍2.2.2 Minio安装Windows安装Linux安装 2.2.3 Minio入门 2.3 上传文件接口2.3.1 FileUploadController2.3.2 FileUploadService2.3.3 MinioProperties2.3.4 配置文件内容2.3.5 主启动类加上EnableConfigurationProperties 2.4 前端对接 2.…

Typora 最新激活方法

Markdown是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式,其目标是实现易读易写。而Typora则是一个非常不错的Markdown编辑器,它的界面非常的简洁直观,并且功能各…

15. 机器学习 - 支持向量机

Hi, 你好。我是茶桁。 逻辑回归预测心脏病 在本节课开始呢,我给大家一份逻辑回归的练习,利用下面这个数据集做了一次逻辑回归预测心脏病的练习。 本次练习的代码在「茶桁的AI秘籍」在Github上的代码库内,数据集的获取在文末。这样做是因为我…

探究栈帧的奥妙

目录 探究栈帧的奥妙 引言 浅浅说一下栈 问问自己几个问题 什么是栈帧 栈帧的维护 汇编预备知识 小例子 访问栈帧里的数据 例子 栈帧是如何切换的 栈帧是如何处理参数和返回值的 探究栈帧的奥妙 作者申明: 文中有些名词可能不太官方,大部分…

UEditor配置后端上传图片

🔥博客主页: 破浪前进 🔖系列专栏: Vue、React、PHP ❤️感谢大家点赞👍收藏⭐评论✍️ 后端框架:Fastadmin 目录结构: 代码: {"imageActionName": "uploadimage&q…

样式迁移 - Style Transfer

所谓风格迁移,其实就是提供一幅画(Reference style image),将任意一张照片转化成这个风格,并尽量保留原照的内容(Content)。 将样式图片中的样式迁移到内容图片上,得到合成图片。 基于CNN的样式迁移 奠基性工作: 首先…

优先队列PriorityQueue

前言 PriorityQueue这个队列不知道大家使用过吗,反正我用的很少,主要对它不是很了解,今天我带领大家剖析下PriorityQueue这个优先级队列。 PriorityQueue介绍 顾名思义,PriorityQueue是优先队列的意思。优先队列的作用是能保证每…

基于SpringBoot的疫苗发布和接种预约系统

目录 前言 一、技术栈 二、系统功能介绍 管理员功能实现 疫苗信息管理 医院信息管理 医生管理 医生功能实现 预约接种管理 疫苗信息查看 医院信息查看 用户功能实现 在线论坛 疫苗信息 医院信息 三、核心代码 1、登录模块 2、文件上传模块 3、代码封装 前言 如…

Java高并发应对策略:探索解决秒杀问题的几种成功方案

01 什么是高并发? 高并发(High Concurrency)是互联网分布式系统架构设计中必须考虑的因素之一,它通常是指,通过设计保证系统能够同时并行处理很多请求。高并发相关常用的一些指标有响应时间(Response Time),吞吐量(Throughput)&a…