JavaScript 基础知识:第 1 部分

javascript 基础知识:第 1 部分

javascript 就像一罐蜂蜜。您可以将手指浸入其中并刷一口。很甜。太棒了。这是危险的。它可能很危险,就像锅里的热蜂蜜一样。

javascript 复杂吗?好吧,您应该在本摘录的末尾找到这个问题的答案(也包括其他部分)。我们可以问另一个问题。开发一个程序需要多少 javascript 知识?如果您了解数据和数据流,将会有所帮助。我需要什么数据以及如何构建它?我该如何处理这些数据?类似的事情。当你思考一个概念时,你会做或应该能够做。这本质上就是本材料的目的(不过我们没有忘记第一个问题,“javascript 复杂吗?”)。

我通常喜欢简短而详细的文章,但这次会很长,所以请系好安全带。

我们将在这一部分讨论数据类型和变量。

运行 javascript

之前在什么是 nodejs 上,我们创建了一个 hello world 程序。我们也会在这里做同样的事情。

立即学习“Java免费学习笔记(深入)”;

要运行javascript程序,我们需要nodejs和要运行的程序(代码)。我们将使用一个名为 app.js 的文件。因此,创建一个名为 app.js 的文件并继续操作。 .js 扩展名表明它是一个 javascript 文件。我们已经讨论过这个问题了,所以我就到此为止。

node app.js

控制台日志

有一种简单的方法可以将文本(数据)打印到终端(屏幕),这是通过 console.log 完成的。就像我们的 hello world 程序一样。在文本编辑器中输入此代码。

console.log("hello, it's me, javascript");

我们在 ( 和 ) 之间放置的任何有效数据都将打印到终端。在我们的例子中,我们在屏幕上打印了一条文本,说:你好,是我,javascript。我们要打印的数据周围有双引号。这封引号使我们的数据成为一个字符串。

尝试将字符串打印(写入)到终端并感受一下。

为了避免怀疑,当您创建 app.js 时,请在输入代码时保存它,然后运行它。

细绳

字符串是用引号(双引号、单引号或反引号)括起来的值(数据)。字符串就是文本。你的名字、年级等都是字符串。字符串可以是短语、句子、段落、单词、字符等

示例

“lorem ipsum”’lorem ipsum’lorem ipsum“哦!那个库是由ant fu开发的,一个狂热的开源者?”“丹尼的妈妈是一位科技首席执行官”“我想在字符串中使用单引号。那么使用双引号作为引号不是更好吗?”’我想在字符串中使用双引号。单引号表示,“有一个名为 foo bar 的字符串”’“我可以混合搭配单引号和反引号中的双引号”,john doe 的爸爸说。

上面的示例向您展示了如何使用字符串,并指出了在 javascript 中处理字符串的注意事项。对于初学者,您可以决定使用双引号或单引号。你选择。在进行字符串插值或遇到最后一个示例时使用反引号。只需知道,当您使用引号创建字符串时,起始引号必须匹配,并以相同的引号结束。所以不能用单引号开始,用双引号结束。

我们可以在引号分隔的字符串中使用引号(双引号、单引号或反引号),但随后我们必须对其进行转义。我们使用反斜杠,.

示例

console.log('we can use double quote in a double-quoted string, " by escaping');

现在,使用 console.log 记录上述字符串并编写您自己的字符串。

数字

数字示例:-3、5、10000、12.5等。它们可用于表示某项的计数或测量值。我的意思是,这就是数字。或者?

布尔值

布尔值,是一种值(数据)类型,就像字符串和数字一样。但是,布尔值要么为真,要么为假。某些条件是或不是的情况。

目的

javascript 中的对象是一种呈现键值对数据的方式。我们可以使用对象文字对某些项目的相关数据进行分组。为了创建对象文字,我们将此数据括在 { 和 } 中。让我们创建一个用户个人资料。

示例

我们将console.log用户个人资料。用户个人资料姓名、出生日期、职业、宠物数量、蛋白质重量(克)、工作等。每个键值都用逗号分隔。键后跟冒号,然后是值,形成键值对。通常,键是字符串(是的,我们将对象的键括在引号中)。您可以向其中添加更多键(属性)。

name 是一个字符串(我的意思是它的值)。 javascript 中有一个日期对象,但现在我们可以使用字符串来表示出生日期。 profession 也是一个字符串。 宠物数量和蛋白质重量(以克为单位)是数字。 有工作 表示个人资料持有者是否有工作。所以它是一个布尔值。

{    "name": "john doe",    "date of birth": "2000-12-25",    "profession": "software engineer",    "number of pets": 2,    "weight of protein in grams": 12.5,    "has a job": true}

这是一个对象(文字),详细介绍了 john doe 个人资料的内容。

现在我们可以console.log它了。

console.log({  name: "john doe",  "date of birth": "2000-12-25",  profession: "software engineer",  "number of pets": 2,  "weight of protein in grams": 12.5,  "has a job": true,});

请注意,现在将键设置为字符串很重要。保持好奇心并使用字符串以外的其他东西作为键。你会学到很多东西。

计算器

数学是编程和科学的日常事务。我们不需要那么多数学。我们需要知道的是加法 (+)、减法 (–)、乘法 (*)、除法 (/),模 (%) 和指数 (**)。

从这里开始,模 (%) 和指数 (**) 对您来说是新的,因此我们将做一些数学运算。

// adding numbers with the plusconsole.log(3 + 3); // answer = 6console.log(1 + 2 + 4); // answer = 7// subtraction with dashconsole.log(6 - 3); // answer = 3console.log(-16 - 3); // answer = -19// multiplication with asteriskconsole.log(5 * 3); // answer = 15console.log(30 * 15); // answer = 450// division with forward slashconsole.log(30 / 5); // answer = 6console.log(12.25 / 0.5); // answer = 24.5// modulo (is the remainder after division is done) with the percentage sign (%)console.log(5 % 2); // answer = 1console.log(2 % 5); // answer = 2// exponent with two asterisks (**)console.log(5 ** 2); // answer = 5 * 5 = 25

变量

稍后,我们将在考虑为什么需要变量后讨论变量是什么。我认为您会根据您可能需要变量的原因来了解变量是什么。

让我们考虑一下到目前为止我们已经完成的字符串、数字、布尔值、对象和计算。我们如何获得这些值并对它们进行其他计算?我们使用一个变量。

因此我们可以将 3 + 3 的结果 6 存储或分配给变量。然后我们可以稍后使用该值。这样我们就可以跟踪变量的值(状态)。要知道,只要你看到一个变量,就有一个值。

变量是附加到值的标记、标签或名称。无论您在何处调用(引用)或使用该变量,都会引用该值。当我们说x为2时,x加上3,即x + 3。结果将是x + 3 = 2 + 3 = 5。

变量保存数据流中使用的数据。

cont 和 let
在 javascript 中,创建变量时使用 const 和 let(小写)。

当你想要分配一个不应该或不会改变的值时使用 const当你想分配一个可能改变的值时使用let

让我们创建并使用一些变量

const name = "john doe";const dateofbirth = "2000-12-25";const profession = "software engineer";const numberofpets = 2;const weightofproteiningrams = 12.5;const hasajob = true;

以上变量是常量。如果我们希望它们可以更改(重新分配),我们可以使用 let 而不是 const。这样我们就可以为这些变量分配不同的值。尝试为 const 变量重新赋值。

这就是我们所说的为变量重新赋值的意思。

const name = "john doe";name = "peter dow";

或者

const name = "john doe";name = "john dow";

将导致此错误消息:uncaught typeerror:分配给常量变量。

变量注释

要创建变量,我们可以使用 const 和 let。它采用以下形式:let = ;是名称/标签/短语。看看上面的 const 变量。必须以字母字符或下划线(_)开头中不能有空格。由于空格,我的名字不能是变量名。中可以有数字。根据前面的规则,我们可以有name1、a1、_pet3_、max_life、max_life、maxlife、maxlife等变量名称最好描述或告知您它所保存的数据或变量的用途。这些变量:max_life、max_life、maxlife、maxlife,说同样的话,最大寿命。使用了这种格式,maxlife,称为camelcasing。这个,maxlife就是pascalcasing。这个max_life,就是snake_casing。这个 max_life 用于创建常量。

我们可以为之前创建的配置文件对象创建一个变量。

const profile = {  name: "John Doe",  "date of birth": "2000-12-25",  profession: "Software Engineer",  "number of pets": 2,  "weight of protein in grams": 12.5,  "has a job": true,};console.log(profile);

结论

还有更多关于数据和数据流的讨论。到目前为止,我们已经了解了字符串、数字、布尔值和对象文字。正如我们所讨论的,变量是一种跟踪值的方法。语句 const x = 2 将值 2 赋给变量 x。

等于符号=,是赋值运算符。这就是为什么我们说,变量 x 被赋值为 2.

我们还有更多关于 javascript 的内容可以讨论,例如:

字符串插值及其方法要点数组控制结构(if 语句、循环)功能回调、承诺、异步和等待下一件大事

以上就是JavaScript 基础知识:第 1 部分的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1491531.html

赞 (0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
HTPX 简介:适用于 JavaScript 和 Nodejs 的轻量级多功能 HTTP 客户端
上一篇 2025年12月19日 14:02:42
如何出售 Nextjs 代码并增加收入
下一篇 2025年12月19日 14:02:52

相关推荐

  • ChatGPT如何生成结构化内容 表格、JSON等格式生成技巧分享

    ChatGPT如何生成结构化内容 表格、JSON等格式生成技巧分享ChatGPT如何生成结构化内容 表格、JSON等格式生成技巧分享ChatGPT如何生成结构化内容 表格、JSON等格式生成技巧分享ChatGPT如何生成结构化内容 表格、JSON等格式生成技巧分享

    本文将围绕如何引导模型生成表格和JSON等结构化数据进行详细叙述。我们将通过分步讲解的方式,介绍如何通过构建精确的提示词,让模型理解并输出您所需要的特定格式,从而帮助您掌握这一实用技巧,方便您在学习和工作中直接应用。 ☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSe…

    2026年9月26日 • 用户投稿
    100
  • SnakeYAML映射List类型:正确配置Java类以避免转换错误

    SnakeYAML映射List类型:正确配置Java类以避免转换错误SnakeYAML映射List类型:正确配置Java类以避免转换错误SnakeYAML映射List类型:正确配置Java类以避免转换错误SnakeYAML映射List类型:正确配置Java类以避免转换错误

    本文深入探讨了使用SnakeYAML库将YAML文件中的List对象映射到Java类时可能遇到的问题。重点介绍了当YAML结构包含复杂对象列表时,如何正确定义Java类以确保数据能够被精确解析和绑定,从而避免常见的类型转换错误。通过实例代码和注意事项,帮助开发者掌握SnakeYAML处理列表的正确姿…

    2026年9月26日 • 用户投稿
    200
  • 使用SnakeYAML正确映射YAML中的列表对象

    使用SnakeYAML正确映射YAML中的列表对象使用SnakeYAML正确映射YAML中的列表对象使用SnakeYAML正确映射YAML中的列表对象使用SnakeYAML正确映射YAML中的列表对象

    本文详细介绍了在使用SnakeYAML库将YAML文件映射到Java对象时,如何正确处理和转换包含列表(List)类型的复杂数据结构。通过提供清晰的类定义和YAML配置示例,帮助开发者避免常见错误,确保列表对象能够被精确地序列化和反序列化。 1. SnakeYAML简介与基本用法 snakeyaml…

    2026年9月26日 • 用户投稿
    200
  • sublime有哪些必装的插件_sublime推荐必装插件清单

    sublime有哪些必装的插件_sublime推荐必装插件清单sublime有哪些必装的插件_sublime推荐必装插件清单sublime有哪些必装的插件_sublime推荐必装插件清单sublime有哪些必装的插件_sublime推荐必装插件清单

    Sublime Text通过插件可大幅提升效率,建议安装Package Control以方便管理插件;SideBarEnhancements增强侧边栏功能,支持文件快速操作;Emmet和代码片段插件提升前端开发速度,实现HTML/CSS/JS的高效编写;Git集成插件支持版本控制操作,GitGutt…

    2026年9月26日 • 用户投稿
    200
  • Debian Node.js 日志备份与恢复策略

    Debian Node.js 日志备份与恢复策略Debian Node.js 日志备份与恢复策略Debian Node.js 日志备份与恢复策略Debian Node.js 日志备份与恢复策略

    为了保障 Debian 系统中 Node.js 应用的日志安全,本文提供一套完整的日志备份与恢复策略,确保系统故障或数据丢失时能够快速恢复。 一、日志备份 1.1 定期备份:利用 rsync rsync 是一款强大的文件同步工具,可实现日志文件的定期备份: # 创建备份目录mkdir -p /bac…

    2026年9月25日 • 用户投稿
    200
  • 通过索引获取 LinkedHashMap 的值?解决方案与最佳实践

    通过索引获取 LinkedHashMap 的值?解决方案与最佳实践通过索引获取 LinkedHashMap 的值?解决方案与最佳实践通过索引获取 LinkedHashMap 的值?解决方案与最佳实践通过索引获取 LinkedHashMap 的值?解决方案与最佳实践

    本文旨在解决如何比较两个 LinkedHashMap 中具有相同键(chargeTypeName)的值的问题。由于 LinkedHashMap 本身不支持通过索引直接访问,文章将探讨如何利用流(Stream)和分组(Grouping)等技术,有效地找出两个 LinkedHashMap 中键相同的值对…

    2026年9月25日 • 用户投稿
    100
  • 如何提升 Debian Node.js 的安全性

    如何提升 Debian Node.js 的安全性如何提升 Debian Node.js 的安全性如何提升 Debian Node.js 的安全性如何提升 Debian Node.js 的安全性

    在 Debian 系统上部署 Node.js 应用,安全性至关重要。本文概述了确保 Node.js 应用安全性的多方面策略,涵盖安装、配置、持续监控和更新等环节。 一、Node.js 安装与更新 推荐使用 NodeSource PPA 安装并管理 Node.js 和 npm: curl -fsSL …

    2026年9月25日 • 用户投稿
    000
  • VSCode怎样用调试启动参数自定义运行时环境变量 VSCode启动参数自定义环境变量的创新用法​

    vscode允许通过launch.json中的”env”属性直接设置环境变量,或使用”envfile”指定.env文件来加载变量。1. 直接在launch.json中定义”env”属性可为调试会话注入键值对形式的环境变量,适用于…

    2026年9月25日
    400
  • DeepSeek能否生成结构化JSON输出 格式化结果生成方法与适配方式

    DeepSeek能否生成结构化JSON输出 格式化结果生成方法与适配方式DeepSeek能否生成结构化JSON输出 格式化结果生成方法与适配方式DeepSeek能否生成结构化JSON输出 格式化结果生成方法与适配方式DeepSeek能否生成结构化JSON输出 格式化结果生成方法与适配方式

    DeepSeek模型具备生成结构化JSON输出的能力。要实现这一目标,核心在于有效的提示词设计与后续的输出处理。本文将详细阐述如何通过构建精炼的输入,引导DeepSeek输出符合预期的JSON格式数据,并介绍在实际应用中如何进行格式化结果的生成方法与适配方式,帮助用户掌握 DeepSeek 在处理结…

    2026年9月25日 • 用户投稿
    100
  • mysql的索引有哪些类型

    mysql的索引有哪些类型mysql的索引有哪些类型mysql的索引有哪些类型mysql的索引有哪些类型

    MySQL索引可快速查找数据,通过在键值对中存储列值和数据指针实现。常见的索引类型有:B-Tree索引:支持范围查询,数据量大时性能佳。哈希索引:完全匹配查询快,但更新数据开销大。全文索引:索引文本数据,支持全文搜索。空间索引:索引地理空间数据,支持空间查询。并发B-Tree索引:高并发环境下性能更…

    2026年9月24日 • 用户投稿
    100
  • Spring Boot @Nested 测试中属性覆盖与隔离策略

    Spring Boot @Nested 测试中属性覆盖与隔离策略Spring Boot @Nested 测试中属性覆盖与隔离策略Spring Boot @Nested 测试中属性覆盖与隔离策略Spring Boot @Nested 测试中属性覆盖与隔离策略

    本文深入探讨了在Spring Boot集成测试中,如何利用@Nested注解结合@TestPropertySource实现细粒度的属性配置和隔离。通过详细的示例代码,展示了外部测试类和嵌套测试类如何定义各自的属性集,以及这些属性在不同测试上下文中的继承与覆盖机制,从而确保测试环境的精确控制和独立性。…

    2026年9月24日 • 用户投稿
    100
  • UC浏览器怎么查看和清除LocalStorage数据 UC浏览器LocalStorage数据管理方法

    可通过隐私设置清除或开发者工具查看LocalStorage。①在UC浏览器设置中选择“隐私与安全”→“清除浏览数据”,勾选“Cookie及其他网站数据”即可批量删除LocalStorage;②打开uc://inspect启用开发者工具,通过电脑Chrome远程调试查看具体键值对;③root设备后使用…

    2026年9月24日
    300
  • Java Map.entrySet遍历性能优化

    使用增强for循环遍历Map.entrySet()更高效,避免显式声明Iterator;提前缓存key和value减少重复调用;优先选用HashMap提升性能;大数据量可考虑parallelStream并行处理,但需权衡开销。 在Java中,Map.entrySet() 是遍历键值对最常用的方式之一…

    2026年9月24日
    200
  • 动态表单输入中多答案数据处理教程

    本教程旨在解决Web开发中,如何高效处理包含动态数量答案的表单提交数据,特别是当需要更新现有问题及其关联答案时。文章将详细阐述前端表单的命名策略以及后端PHP如何解析这些动态输入,以准确获取答案内容及其对应的数据库ID,从而实现数据的精准更新,并提供最佳实践建议。 理解动态答案更新的挑战 在构建问答…

    2026年9月24日
    200
  • 在Laravel中向视图传递多个变量的几种方法

    本文旨在探讨在laravel框架中,如何高效且正确地从控制器向视图传递多个变量。我们将详细介绍使用单个关联数组、`compact()`辅助函数以及链式调用`with()`方法这三种核心策略,并提供实用的代码示例和最佳实践,确保开发者能够灵活地管理视图数据,提升应用的可维护性与可读性。 Laravel…

    2026年9月23日
    000
  • Java中利用正则表达式从JSON数组中提取独立JSON对象

    本文详细介绍了如何利用Java正则表达式从格式化的JSON数组中提取独立的JSON对象字符串。通过一个具体的代码示例,文章展示了如何构建一个精确的正则表达式模式来匹配并分离数组中的每个JSON实体,并提供了Java代码实现,包括去除多余空白字符的步骤,最终实现将JSON数组解析为可操作的独立对象字符…

    2026年9月23日
    200
  • Java中使用栈验证JSON字符串结构:深入理解与实践

    本文探讨了在Java中利用栈验证JSON字符串结构的核心原理与常见陷阱。我们将分析一种初始实现中处理引号、转义字符及字符串内部结构字符的不足,并提供一个更健壮的栈基方法,以准确判断JSON的括号、方括号和引号是否平衡,同时纠正关于不完整JSON片段有效性的常见误解。 1. JSON结构与验证的重要性…

    2026年9月23日
    100
  • Java中基于栈验证JSON字符串结构有效性的方法

    本文探讨了在Java中利用栈(Stack)数据结构验证JSON字符串结构有效性的方法。我们将分析一个常见的基于栈的实现示例,指出其在处理字符串内部字符、引号平衡以及转义字符方面的潜在缺陷。文章将提供一个改进的解决方案,并强调此方法主要用于结构匹配,而非完整的JSON语法验证,同时建议生产环境中使用专…

    2026年9月23日
    200
  • Java JSON字符串有效性验证:基于栈的实现与常见陷阱

    本文深入探讨了使用Java栈结构验证JSON字符串有效性的方法。通过分析一个常见错误示例,详细阐述了在处理括号、方括号以及字符串引号时的正确逻辑,特别强调了字符串内部字符(包括转义字符)不应影响结构平衡的原则,并提供了改进思路,旨在帮助开发者构建健壮的JSON验证器。 JSON结构与栈的适用性 JS…

    2026年9月23日
    100
  • Karate框架中处理带方括号和日期范围的GET请求参数

    本文旨在解决Karate框架中构建包含复杂、带方括号(如filters[start_date])及日期范围的GET请求参数时遇到的URL编码问题。通过对比直接定义查询对象和使用param关键字的方法,详细阐述了如何正确地构造URL,确保参数格式符合预期,从而有效进行API测试。 1. 问题背景与挑战…

    2026年9月22日
    200

发表回复

登录后才能评论
关注微信