从零开始学习JavaScript:轻松掌握编程语言的核心技能④

这篇具有很好参考价值的文章主要介绍了从零开始学习JavaScript:轻松掌握编程语言的核心技能④。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

🏘️🏘️个人简介:以山河作礼。
🎖️🎖️:Python领域新星创作者,CSDN实力新星认证,阿里云社区专家博主
🎁🎁:Web全栈开发专栏:《Web全栈开发》免费专栏,欢迎阅读!



从零开始学习JavaScript:轻松掌握编程语言的核心技能④

1. JavaScript 表单

1.1 JavaScript 表单验证

📌JavaScript 可用来在数据被送往服务器前对 HTML 表单中的这些输入数据进行验证。

表单数据经常需要使用 JavaScript 来验证其正确性:

  • 验证表单数据是否为空?
  • 验证输入是否是一个正确的email地址?
  • 验证日期是否输入正确?
  • 验证表单输入内容是否为数字型?

📌以下是一个简单的示例,演示如何验证表单中的文本输入字段:

<form>
  <label for="name">姓名:</label>
  <input type="text" id="name" name="name"><br><br>
  <label for="email">电子邮件地址:</label>
  <input type="email" id="email" name="email"><br><br>
  <label for="password">密码:</label>
  <input type="password" id="password" name="password"><br><br>
  <input type="submit" value="提交">
</form>

<script>
  const form = document.querySelector('form');
  const nameInput = document.querySelector('#name');
  const emailInput = document.querySelector('#email');
  const passwordInput = document.querySelector('#password');

  form.addEventListener('submit', (event) => {
    // 阻止表单默认提交行为
    event.preventDefault();

    // 检查姓名输入是否为空
    if (nameInput.value.trim() === '') {
      alert('请填写姓名');
      return;
    }

    // 检查电子邮件地址是否有效
    if (!isValidEmail(emailInput.value)) {
      alert('请输入有效的电子邮件地址');
      return;
    }

    // 检查密码是否至少包含一个数字和一个字母
    if (!isValidPassword(passwordInput.value)) {
      alert('密码必须至少包含一个数字和一个字母');
      return;
    }

    // 如果所有验证都通过,则提交表单
    form.submit();
  });

  // 检查电子邮件地址是否有效的函数
  function isValidEmail(email) {
    const emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
    return emailRegex.test(email);
  }

  // 检查密码是否至少包含一个数字和一个字母的函数
  function isValidPassword(password) {
    const passwordRegex = /^(?=.*[A-Za-z])(?=.*\d)[A-Za-z\d]{8,}$/;
    return passwordRegex.test(password);
  }
</script>

运行结果:
从零开始学习JavaScript:轻松掌握编程语言的核心技能④

在这个示例中,我们使用 addEventListener 方法为表单的 submit事件添加了一个监听器,当用户点击提交按钮时,我们将执行一些自定义验证逻辑。如果验证成功,我们将调用 form.submit()方法提交表单。否则,我们将使用 alert方法显示一个错误消息。同时我们使用了两个正则表达式来验证电子邮件地址和密码。正则表达式是一种强大的工具,可以用来匹配和搜索字符串。在这里,我们使用正则表达式来确保用户输入的电子邮件地址和密码符合特定的格式要求。

2. JavaScript 保留关键字

📌JavaScript 保留关键字是指被 JavaScript 语言保留用于特定用途的单词。这些单词不能用作标识符,如变量名、函数名等。
以下是 JavaScript 中的保留关键字:

await
break
case
catch
class
const
continue
debugger
default
delete
do
else
enum
export
extends
false
finally
for
function
if
implements
import
in
instanceof
interface
let
new
null
package
private
protected
public
return
static
super
switch
this
throw
true
try
typeof
var
void
while
with
yield

在编写 JavaScript 代码时,应避免使用这些保留关键字作为标识符,以免产生语法错误。

3. JavaScript this 关键字

📑 📑 在 JavaScript 中,this 关键字用于引用当前执行上下文中的对象。具体来说,this 引用的是调用当前函数的对象
📌当函数以对象的方法的形式调用时,this 引用该对象
例如:

const person = {
  name: 'Alice',
  sayHello() {
    console.log(`Hello, my name is ${this.name}.`);
  }
};

person.sayHello(); // 输出 "Hello, my name is Alice."

在上面的例子中,sayHello 方法是以 person 对象的方法的形式调用的,因此在方法内部,this 引用 person 对象。

📌当函数以普通函数的形式调用时,this 引用全局对象(在浏览器中是 window 对象,在 Node.js 中是 global 对象)。
例如:

function sayHello() {
  console.log(`Hello, my name is ${this.name}.`);
}

sayHello(); // 输出 "Hello, my name is undefined."

在上面的例子中,sayHello 函数是以普通函数的形式调用的,因此在函数内部,this 引用全局对象。由于全局对象没有 name属性,因此输出结果为 undefined。

📌可以使用 call、apply 和 bind 方法来显式地设置函数内部的 this。
例如:

const person1 = { name: 'Alice' };
const person2 = { name: 'Bob' };

function sayHello() {
  console.log(`Hello, my name is ${this.name}.`);
}

sayHello.call(person1); // 输出 "Hello, my name is Alice."
sayHello.call(person2); // 输出 "Hello, my name is Bob."

在上面的例子中,call 方法用于调用 sayHello 函数,并将 this 设置为 person1 或 person2对象。因此在函数内部,this 引用相应的对象。

4. JavaScript let 和 const

📑 📑 let 和 const 是 ES6 中新增的声明变量的关键字,它们与传统的 var 关键字有所不同。

4.1 let

📌let 关键字用于声明块级作用域的变量。块级作用域是指在代码块(如函数、循环、条件语句等)内部声明的变量只在该代码块内部可见,外部无法访问。
例如:

let x = 1;

if (true) {
  let x = 2;
  console.log(x); // 输出 2
}
console.log(x); // 输出 1

在上面的例子中,let x = 2 声明了一个块级作用域的变量,只在 if 语句块内部可见。外部的 x 变量仍为 1。

4.2 const

📌const 关键字用于声明块级作用域的常量。与 let 类似,const 声明的变量也是块级作用域的。
与 let 不同的是,const 声明的变量不能被重新赋值。一旦声明,其值就不能再改变。

例如:

const x = 1;

if (true) {
  const x = 2;
  console.log(x); // 输出 2
}
console.log(x); // 输出 1
// 以下代码会抛出 TypeError 错误
const y = 1;
y = 2;

在上面的例子中,const x = 2 声明了一个块级作用域的常量,只在 if 语句块内部可见。外部的 x 常量仍为 1。 尝试重新赋值常量 y 会抛出 TypeError 错误,因为常量不能被重新赋值。

5.JavaScript JSON

📑 📑 JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,基于 JavaScript 语法的子集
📌JSON 的语法规则非常简单,它由以下三种基本类型组成:

  • 对象(Object)
  • 数组(Array)
  • 值(Value)

📌对象是一组键值对,键和值之间使用冒号分隔,键值对之间使用逗号分隔,对象使用花括号包裹。
例如:

const person = {
  name: 'Alice',
  age: 25,
  address: {
    city: 'Beijing',
    country: 'China'
  }
};

// 将对象转换为 JSON 字符串
const jsonStr = JSON.stringify(person);
console.log(jsonStr); // 输出 {"name":"Alice","age":25,"address":{"city":"Beijing","country":"China"}}

📌数组是一组有序的值,值之间使用逗号分隔,数组使用方括号包裹。
例如:

const fruits = ['apple', 'banana', 'orange'];

// 将数组转换为 JSON 字符串
const jsonStr = JSON.stringify(fruits);
console.log(jsonStr); // 输出 ["apple","banana","orange"]

📌值可以是字符串、数字、布尔值、null、对象或数组。
例如:

const data = {
  name: 'Alice',
  age: 25,
  married: false,
  hobbies: ['reading', 'running'],
  address: {
    city: 'Beijing',
    country: 'China'
  },
  job: null
};

// 将值转换为 JSON 字符串
const jsonStr = JSON.stringify(data);
console.log(jsonStr); // 输出 {"name":"JavaScript 

📌在JavaScript中,可以使用JSON对象来解析和生成JSON数据。
📑 📑 JSON对象提供了两个方法

  1. JSON.parse()用于解析JSON字符串,将其转换为JavaScript对象;
  2. JSON.stringify()用于将JavaScript对象转换为JSON字符串。

例如,以下是一个JSON字符串的示例:

{
  "name": "John Doe",
  "age": 30,
  "isMarried": true,
  "hobbies": ["reading", "music", "sports"],
  "address": {
    "street": "123 Main St",
    "city": "Anytown",
    "state": "CA",
    "zip": "12345"
  }
}

📌可以使用JSON.parse()方法将其转换为JavaScript对象,
例如:

var jsonString = '{"name":"John Doe","age":30,"isMarried":true,"hobbies":["reading","music","sports"],"address":{"street":"123 Main St","city":"Anytown","state":"CA","zip":"12345"}}';
var jsonObj = JSON.parse(jsonString);

📌这样就可以使用JavaScript对象的方式访问JSON数据了,同样地可以使用JSON.stringify()方法将JavaScript对象转换为JSON字符串,
例如:

var jsonObj = {
  "name": "John Doe",
  "age": 30,
  "isMarried": true,
  "hobbies": ["reading", "music", "sports"],
  "address": {
    "street": "123 Main St",
    "city": "Anytown",
    "state": "CA",
    "zip": "12345"
  }
};
var jsonString = JSON.stringify(jsonObj);

6.JavaScript 异步编程

📑 📑 JavaScript 是一种单线程语言,这意味着它一次只能执行一个任务。但是,JavaScript 中的异步编程模型允许我们在执行长时间运行的任务时不会阻塞主线程。
📌JavaScript 中常用的异步编程模型包括:

  • ·回调函数:回调函数是异步编程中最常用的模型之一。在这种模型中,我们将一个函数作为参数传递给另一个函数,并在异步操作完成后调用该函数。
  • Promise:Promise 是一种更现代的异步编程模型,它提供了一种更优雅的方式来处理异步操作。Promise
    对象表示一个异步操作的最终完成或失败,并且允许我们在异步操作完成后执行一些代码。
  • async/await:async/await 是一种基于 Promise 的异步编程模型。async/await使得异步代码看起来像同步代码,这使得代码更易于理解和维护。

无论使用哪种异步编程模型,都需要小心处理异步代码中的错误和异常。异步代码中的错误可能会导致程序崩溃或无法正常工作。因此,一定要确保正确地处理错误和异常。

7.JavaScript 代码规范

📑 📑 在 JavaScript 中,代码规范是非常重要的。它可以提高代码的可读性和可维护性,并减少代码错误和漏洞的风险
📌以下是一些常见的 JavaScript 代码规范:文章来源地址https://www.toymoban.com/news/detail-474473.html

  1. 使用驼峰命名法来命名变量、函数和对象属性。
  2. 使用 const 或 let 来声明变量,不要使用 var。
  3. 在代码块中使用花括号,即使代码块只有一行。
  4. 在函数名和括号之间留一个空格,例如 function test() { }。
  5. 在操作符周围留空格,例如 a + b。
  6. 在逗号后留一个空格,例如 var arr = [1, 2, 3]。
  7. 使用分号来结束语句。
  8. 避免使用全局变量,尽可能使用局部变量。
  9. 使用注释来解释代码的目的和功能。
  10. 尽可能使用模块化的代码结构,将相关的代码组织在一起。

到了这里,关于从零开始学习JavaScript:轻松掌握编程语言的核心技能④的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 从零开始学习R语言编程:完全指南

    R语言是一种流行的数据分析语言,广泛应用于学术界、商业界和社会科学研究等领域。与其它数据分析软件相比,R语言的优点包括免费开源、高效可靠、具有强大的数据分析和可视化能力等。R语言的编程基础包括了各种控制结构和函数,可以方便地实现算法和数据操作。本

    2024年02月10日
    浏览(33)
  • [从零开始学习FPGA编程-32]:进阶篇 - 基本时序电路-D触发器(Verilog语言)

    作者主页(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客 本文网址:  目录 第1章 什么是时序电路 1.1 时序电路 1.2 什么是触发器

    2023年04月08日
    浏览(22)
  • 如何高效的学习接口自动化测试?从零开始学习接口自动化测试:选择合适的学习资源和编程语言

    目录 引言: 一、学习前的准备 二、选择合适的学习资源 三、实践中学习 四、总结 在日常的软件开发过程中,接口自动化测试是一个非常重要的环节。接口自动化测试可以帮助我们快速准确地检测出软件中的缺陷,提高软件的质量和稳定性。但是,要学习接口自动化测试并

    2024年02月06日
    浏览(35)
  • 编写接口文档示例:从零开始,轻松掌握关键技巧

    接口文档的编写是软件开发中至关重要的一环,本文将详细介绍如何编写接口文档示例,为您揭示从基础知识到高级技巧的全过程。通过实用的指导和比喻,让您轻松掌握编写接口文档示例的艺术。 在现代软件开发中,编写接口文档示例是确保项目顺利推进和团队合作的重要

    2024年02月12日
    浏览(25)
  • AI代码翻译神器,用AI翻译代码,轻松学习不同编程语言,已开源!

    体验地址,github地址和部署地址在文章底部 近年来,随着技术的快速进步,人工智能技术展现出了在各个领域发挥作用的巨大潜力。AI代码翻译器作为一项创新技术,为开发者带来了全新的可能性。这项技术运用人工智能,能够将一种编程语言的代码翻译成另一种,便利了跨

    2024年01月21日
    浏览(42)
  • 学习javascript,前端知识精讲,助力你轻松掌握

    ✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 所属专栏: 前端泛海 景天的主页: 景天科技苑 JavaScript在1995年诞生了; 由Netscape公司,布兰登·艾奇(Brendan Eich)发明的ECMAScript客户端脚本语言; 主要应用在浏览器,在当时却不温不火. 直到后来Netscape与S

    2024年03月15日
    浏览(37)
  • 从零开始-学习网络必须掌握的基础知识

    从零开始!学习网络必须掌握的基础知识 完整的100个网络知识,可留言,会发送!点击关注,可获得网工大礼包哈

    2024年02月15日
    浏览(29)
  • 从零学习开发一个RISC-V操作系统(四)丨RISC-V汇编语言编程

       本系列是博主参考B站课程学习开发一个RISC-V的操作系统的学习笔记,计划从RISC-V的底层汇编指令学起,结合C语言,在Ubuntu 20.04上开发一个简易的操作系统。一个目的是通过实践操作学习和了解什么是操作系统,第二个目的是为之后学习RISC-V的集成电路设计打下一定基础

    2024年01月25日
    浏览(24)
  • [前端系列第3弹]JS入门教程:从零开始学习JavaScript

    本文将带领大家,从零开始学习JavaScript,fighting~ 目录 一、JavaScript简介 二、变量和数据类型 三、注释和分号 四、算术运算符 五、表达式和语句 六、代码块和作用域 七、函数(最重要)          JavaScript(简称JS)是一种运行在浏览器中的脚本语言,它可以让网页变得

    2024年02月13日
    浏览(23)
  • Python入门指南:从零开始学习Python编程

    Python是一种简单而又强大的编程语言,它在全球范围内广受欢迎,适用于各种应用场景,包括Web开发、数据分析、人工智能和科学计算等。本篇博客将为初学者提供一份Python入门指南,帮助你从零开始掌握Python编程基础。 首先,我们需要安装Python解释器。前往Python官方网站(

    2024年02月14日
    浏览(28)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包