JavaScript实现随机点名小程序

下面是JavaScript实现随机点名小程序的完整攻略:

确定需求

在实现随机点名小程序之前,需要确定具体的需求。本程序的功能主要是:随机从一组学生名单中选中一位学生,并将该学生的名字展示出来。在此基础上,还可以加入更多的功能,比如记录已经点名的学生,排除已经点名的学生,或者在每次点名之后自动刷新学生名单等等。

准备工作

在编写代码之前,需要准备好页面的布局和JavaScript的相关资源文件。通常可以在HTML文件中引入JavaScript的脚本文件,或者直接在HTML文件中编写JavaScript代码。在这里,我们简单地创建一个HTML文件和一个JavaScript文件:

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>随机点名小程序</title>
</head>
<body>
    <h1>随机点名小程序</h1>
    <p id="result"></p>
    <button onclick="pickStudent()">点名</button>
    <script src="random.js"></script>
</body>
</html>
// 随机点名程序

var students = ['张三', '李四', '王五', '赵六', '钱七', '孙八', '周九', '吴十'];

function pickStudent() {
    var index = Math.floor(Math.random() * students.length);
    var student = students[index];
    document.getElementById('result').innerHTML = student;
}

在上述代码中,我们通过HTML文件中的<button>标签和JavaScript中的onclick属性来触发点名操作,通过JavaScript中的Math.random()函数来生成随机数,并根据随机数选出一个学生。

实现代码

在实现随机点名小程序的过程中,需要用到一些JavaScript的基本语法,包括变量、数组、函数、循环、条件语句等等。下面我们对这些语法进行简单的讲解,并给出示例代码。

变量

变量是用来存储数据的容器,可以通过关键字var来定义变量,例如:

var name = '张三';
var age = 20;
var gender = '男';

数组

数组是一组有序的数据集合,可以通过下标来访问其中的元素。定义一个数组可以使用方括号[],并将其中的元素用逗号隔开,例如:

var students = ['张三', '李四', '王五'];

可以通过下标来访问数组中的元素,例如:

var student1 = students[0]; // 访问第一个元素,结果为'张三'
var student2 = students[1]; // 访问第二个元素,结果为'李四'
var student3 = students[2]; // 访问第三个元素,结果为'王五'

函数

函数是一段可重复使用的代码块,通常用来实现一个具体的功能。函数可以接收参数,可以返回值,也可以在函数内部调用其他函数。定义一个函数可以使用function关键字,例如:

function add(a, b) {
    return a + b;
}

可以通过调用函数来获取函数的返回值,例如:

var result = add(1, 2); // 调用函数,结果为3

循环

循环是一种重复执行指定代码块的方法,通常用于遍历数组或者执行一定次数的操作。JavaScript提供了多种循环结构,包括for循环、while循环、do...while循环等等。以下是一个使用for循环遍历数组的示例代码:

var students = ['张三', '李四', '王五'];
    for (var i = 0; i < students.length; i++) {
        console.log(students[i]);
    }

条件语句

条件语句用于根据特定的条件来执行代码块,常用的条件语句包括if语句和switch语句。以下是一个使用if语句来判断学生是否及格的示例代码:

var score = 80;
if (score >= 60) {
    console.log('及格');
} else {
    console.log('不及格');
}

示例代码

下面是一个稍微复杂一点的随机点名小程序的示例代码,包含了以上介绍的语法,以及一些常用的JavaScript函数和技巧:

// 随机点名程序

var students = ['张三', '李四', '王五', '赵六', '钱七', '孙八', '周九', '吴十'];
var pickedStudents = [];

function pickStudent() {
    if (students.length === pickedStudents.length) {
        // 如果已经所有学生都已经被点过了,则重新开始
        pickedStudents = [];
    }
    var index;
    do {
        // 避免重复点名
        index = Math.floor(Math.random() * students.length);
    } while (pickedStudents.indexOf(index) !== -1);
    pickedStudents.push(index);
    var student = students[index];
    document.getElementById('result').innerHTML = student;
}

function addStudent() {
    // 添加一个学生
    var input = document.getElementById('new-student');
    var name = input.value.trim();
    if (name) {
        students.push(name);
        input.value = '';
    }
}

function removeStudent() {
    // 删除一个学生
    var input = document.getElementById('remove-student');
    var name = input.value.trim();
    var index = students.indexOf(name);
    if (index !== -1) {
        students.splice(index, 1);
        input.value = '';
    }
}

function showStudents() {
    // 展示所有学生
    var list = document.getElementById('student-list');
    list.innerHTML = '';
    for (var i = 0; i < students.length; i++) {
        var item = document.createElement('li');
        item.innerHTML = students[i];
        list.appendChild(item);
    }
}

在这个代码中,我们定义了一个 students 数组来存储所有的学生名单,用 pickedStudents 数组来存储已经被点名的学生下标,用 pickStudent() 函数来实现点名操作。在 pickStudent() 函数中,我们通过 do...while 循环避免重复点名,用 indexOf() 方法判断一个元素是否存在于数组中。除了点名之外,我们还实现了添加学生、删除学生、展示所有学生等功能,并在HTML中通过按钮来触发这些功能。

总结

随机点名小程序是一个基础的JavaScript应用程序,其实现的过程中涉及到了很多JavaScript的基本语法和技巧。为了更好地理解和掌握JavaScript,需要不断学习、实践和总结,才能写出高质量、高效率的代码。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JavaScript实现随机点名小程序 - Python技术站

(0)
上一篇 2023年6月11日
下一篇 2023年6月11日

相关文章

  • JavaScript语法约定和程序调试原理解析

    JavaScript语法约定和程序调试原理解析 JavaScript语法约定 变量命名 变量名必须以字母、下划线(_)或美元符号($)开头。不能以数字开头。 变量名可以包含字母、数字、下划线、美元符号。 变量名区分大小写。 变量名不允许使用JavaScript中的关键字和保留字。 语句分号 JavaScript中一般可以省略语句结束的分号,但是在以下情况下必…

    JavaScript 2023年5月28日
    00
  • 记录-JavaScript常规加密技术

    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 当今Web开发中,数据安全是一个至关重要的问题,为了确保数据的安全性,我们需要使用加密技术。JavaScript作为一种客户端编程语言,可以很好地为数据进行加密。在本篇文章中,我们将为你提供一个常规JavaScript加密大全,以及案例代码来演示如何使用它们。 Base64加密 Base64是一种…

    JavaScript 2023年4月19日
    00
  • js在HTML的三种引用方式详解

    我来详细讲解“js在HTML的三种引用方式详解”。 什么是js在HTML的三种引用方式 在HTML中,我们可以通过三种不同的方式引入JavaScript代码,让我们的网页拥有更多的交互性和动态效果。这三种引用方式分别是: 内部文件引用:在HTML文件中使用<script>标签引入JavaScript文件; 外部文件引用:在HTML文件中使用&lt…

    JavaScript 2023年5月27日
    00
  • JS中常见编码及加密方式解析

    JS中常见编码及加密方式解析 在JS中,常见的编码方式有:URL编码、Base64编码、HEX编码;常见的加密方式有:MD5加密、SHA1加密、对称加密和非对称加密。本文将一一为您详细讲解,并提供相应的示例。 URL编码 URL编码是一种在网络上传输数据的编码方式,需要将数据中的特殊字符进行编码,以便网络进行传输和识别。在JS中我们可以使用encodeURI…

    JavaScript 2023年5月20日
    00
  • 用JavaScript计算在UTF-8下存储字符串占用字节数

    首先,我们需要了解UTF-8编码方式对于Unicode字符的存储规则。UTF-8使用一至四个字节来表示一个Unicode字符,其中使用一个字节来存储单字节字符,使用两至三个字节来存储双字节字符,使用四个字节来存储三至四字节字符。 接下来,我们可以使用JavaScript编写一个函数来计算某个字符串在UTF-8下占用字节数,具体过程如下: 将字符串转换为UTF…

    JavaScript 2023年5月19日
    00
  • C#设置或验证PDF文本域格式的方法详解

    C#设置或验证PDF文本域格式的方法详解 介绍 PDF文本域是指在PDF文档中提供的一种可编辑的文本框,用户可以输入文本或选择选项。如果需要对PDF文本域的格式进行设置或验证,那么就需要使用C#编写代码来实现。 本文将详细讲解如何使用C#设置或验证PDF文本域格式,包括以下内容: 创建PDF文本域 设置PDF文本域格式 验证PDF文本域格式 创建PDF文本域…

    JavaScript 2023年5月19日
    00
  • 原生Aajax 和jQuery Ajax 写法个人总结

    原生Ajax与jQuery Ajax写法个人总结 简介 Ajax(Asynchronous JavaScript and XML)是指一种创建交互式、快速动态网页的技术,在不重新加载整个网页的情况下,能够异步地更新部分网页内容。本文将介绍原生Ajax与jQuery Ajax的写法及其异同点。 原生Ajax写法 XMLHttpRequest对象 原生Ajax基…

    JavaScript 2023年6月11日
    00
  • 利用vscode调试编译后的js代码详解

    当我们用VSCode开发JavaScript项目时,调试是一项非常重要的操作。但是,如果我们使用第三方库或框架,我们可能需要调试编译后的JavaScript代码。本篇文章将介绍如何在VSCode中调试编译后的JavaScript代码。 利用source maps调试编译后的JavaScript代码 在使用第三方库或框架时,通常需要使用编译工具将源代码编译成J…

    JavaScript 2023年5月27日
    00
合作推广
合作推广
分享本页
返回顶部