JavaScript中变量的基础知识(超详细)

1.变量

1.1目标

理解变量是计算机存储数据的容器

  1. 变量:变量是计算机用来存储数据的容器(盒子)
  2. 作用:记录计算机数据的不同状态
  3. 注意:变量不是数据本身,它们仅仅是一个用于存储数值的容器。可以理解为一个用来装东西的纸箱子

1.2变量的基本使用

  1. 变量的声明(创建变量)
let age//let 变量名
age=18//age变量赋值18
变量的初始化:变量的声明和赋值放在一块
let age=18
  1. 变量的赋值(把数据存储到变量里面)

注意

  • 数字直接存储

  • 字符要用单引号引引起来,表示一段信息

  1. 更新变量
//声明一个变量age,并同时里面存放了18这个数据
let age=18
//变量里面的数据变化更改为19
age=19
//页面输出19
document.write(age)
  1. 声明多个变量
let num=20,uname=`张三`,age=19
document.write(num,uname,age)
  1. let和var的区别

在旧的javaScript中,使用关键字var来声明变量,而不是let,var现在开发中一般不在使用它,只是我们可能在老版程序中看到它,let是为了解决var的一些问题

var声明

  • 可以先使用在声明
  • var声明过的变量可以重复声明(不合理)
  • 比如变量提升、全局变量、没有块级作用域等等
  1. 练习:

    • 浏览器弹出对话框:请输入姓名

    • 页面中输出:刚才输入的姓名

      分析:
      输入:用户输入框:prompt()
      保存数据(变量)
      输出:页面输出数据 document.write()let name=prompt("请输入姓名")document.write(name)
      

1.3变量案例-交换变量的值

目的:练习变量存储和常见的面试题

需求:

  • 有两个变量:apple里面放的苹果汁,orange里面放的是橙子汁
  • 经过处理,最后apple里面放的是橙子汁,orange里面放的是苹果汁

转化为代码分析

  1. 核心思路:使用一个空变量用来做临时变量
  let apple=`果汁`let orange=`橙子`let temp//定义一个空杯子temp=appleapple=orangeorange=tempdocument.write(apple)document.write(orange)

1.4变量的本质

  1. 内存:计算机中存储数据的地方,相当于一个空间

  2. 变量本质:在内存中开辟一个小的空间,用来存储数据

  3. 变量很多时候内存会开辟很多小空间,如何找到对应的变量

    • 通过变量名可以到内存中找到对应的空间,既可以得到里面的数据

1.5 变量名的规则和规范

  1. 规则
    • 不能使用关键字,如let,var,if
    • 只能用下划线,字母,数字,$组成,且数字不能开头
    • 字母严格区分大小写,如Age和age是不同的变量
  2. 规范
    • 起名要有意义
    • 遵守小驼峰命名法
      • 第一个单词首字母小写,后面每个单词首字母大写。例如userName

image-20241101212525673

2. 常量

  1. 是什么:也是一个容器,用于保存数据
  2. 和变量的区别:常量里面保存的数据是不允许改变的
  3. 使用场景:当某个值永远不会改变的时候,我们可以使用常量来保存,目的是为了程序的安全性
  4. 常量的使用
const pi=3.14
console.log(pi)
  1. 注意
    • 常量必须初始化(声明并赋值)
    • 常量不能修改

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

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

相关文章

iPhone 17 :全系 120HZ,等等党终于等到了

苹果首次在 iPhone 13 Pro 上采用120 HZ 自适应高刷,通过屏幕体验,来拉开 Pro 和标准版的定位差距,这个策略持续到 iPhone 16。 不过从 iPhone 17 开始,情况要开始转变了。 根据外媒ETNews 的透露,苹果明年推出的四款…

【系统配置】信创终端操作系统如何彻底禁用ssh _ 统信 _ 麒麟 _ 方德

原文链接:【系统配置】信创终端操作系统如何彻底禁用ssh | 统信 | 麒麟 | 方德 Hello,大家好啊!今天带来一篇关于如何在信创终端操作系统中彻底禁用SSH的文章。在某些安全性要求较高的环境中,禁用SSH服务可以防止未经授权的远程访…

Ubuntu 18在线安装Docker 实战 2024年11月

Ubuntu 18在线安装Docker 实战 厂商:华为云 系统:Ubuntu 18.04 安装前原本以为国内直接安装会有魔法失效的问题,没有考虑直接用Docker 官方指引,找了各种帖子,各种国内源,结果一堆错,还把系统…

C语言-fseek函数

🌏个人博客:尹蓝锐的博客 希望文章能够给到初学的你一些启发~ 如果觉得文章对你有帮助的话,点赞 关注 收藏支持一下笔者吧~ fseek函数 int fseek ( FILE * stream, long int offset, int origin ); 重新定位流位置指示…

排序算法之插排希尔

算法时间复杂度(最好)时间复杂度(平均)时间复杂度(最差)空间复杂度插入排序O(n)O(n^2)O(n^2)1希尔排序O(n)O(n^1.3)O(n^2) 1 1.插入排序 玩牌时,每得到一张,就要把它插入…

babylonjs shader学习之shadertoy案例四

代码 const onSceneReady (scene: Scene) > {(scene.activeCamera as ArcRotateCamera).beta 1.185793134378305;const light new HemisphericLight(light, Vector3.Down(), scene);light.intensity 1;const plane MeshBuilder.CreatePlane(ground, { width: 10, heig…

【机器学习】20. RNN - Recurrent Neural Networks 和 LSTM

1. RNN定义 用于顺序数据 文本数据是序列数据的一个例子 句子是单词的序列——一个单词接另一个单词 每个句子可能有不同数量的单词(长度可变) 每个句子之间可能有长距离的依赖关系 rnn可以记住序列中较早的相关信息 RNN在每个时间点取序列中的1个…

python-读写Excel:openpyxl-(4)下拉选项设置

使用openpyxl库的DataValidation对象方法可添加下拉选择列表。 DataValidation参数说明: type: 数据类型("whole", "decimal", "list", "date", "time", "textLength", "custom"…

unity发布webGL

1.安装WebGL板块 打开unity,进入该界面,然后选择圈中图标 选择添加模块 选择下载WebGL Build Support 2.配置项目设置 打开一个unity项目,如图进行选择 如图进行操作 根据自己的情况进行配置(也可直接点击构建和运行&#xff09…

基于势能的平面运动模拟

运动模拟 接前面递归调用——单向汉诺塔七边形最小分割弦 F m a Fma Fma F m a m d 2 r d t 2 F ma m \frac{{{d^2}\ r}}{{d{t^2}}} Fmamdt2d2 r​ F k Q q r 2 r ^ F k \frac{{Qq}}{{{r^2}}} \hat{r} Fkr2Qq​r^代码电荷的位置和值运动电荷的初始位置和速度计算距离计算…

SpringBoot在线教育系统:数据分析与报告

4系统概要设计 4.1概述 本系统采用B/S结构(Browser/Server,浏览器/服务器结构)和基于Web服务两种模式,是一个适用于Internet环境下的模型结构。只要用户能连上Internet,便可以在任何时间、任何地点使用。系统工作原理图如图4-1所示: 图4-1系统工作原理…

Linux开发工具——make/Makefile

目录 一、什么是makefile? 二、为什么要有makefile? 三、makefile的使用 1.依赖关系与依赖方法 2.伪目标 3.定义变量 4.特殊符号 四、makefile的执行逻辑 一、什么是makefile? Makefile是一种自动化构建工具,make是一条指…

BC146 添加逗号

BC146 添加逗号 import java.util.Scanner;// 注意类名必须为 Main, 不要有任何 package xxx 信息 public class Main {public static void main(String[] args) {Scanner in new Scanner(System.in);String str in.next();StringBuilder s new StringBuilder(str);for(int …

【计算机视觉】深入浅出SLAM技术原理

引言 SLAM(Simultaneous Localization and Mapping,同步定位与建图)是机器人学和计算机视觉中的一个重要技术,它允许机器人在未知环境中自主导航,同时构建环境的地图并确定自身的精确位置。本文将详细介绍SLAM技术的基…

求平面连接线段组成的所有最小闭合区间

这个功能确实非常实用,我在过去开发地面分区编辑器时就曾应用过这一算法。最近,在新产品的开发中再次遇到了类似的需求。尽管之前已经实现过,但由于长时间未接触,对算法的具体细节有所遗忘,导致重新编写时耗费了不少时…

如何才能实时监测Mac的运行状态

实时监测Mac的运行状态,能够让我们更好的了解Mac的情况,因此如何才能监测Mac的运行状态很重要 State,实时监测你的Mac运行状态,能够直观的展示当前Mac的CPU、内存、硬盘、温度、风扇、网络信息以及开机时间等重要信息 除此之外&a…

强化学习介绍

目录标题 一、什么是强化学习二、强化学习的环境三、强化学习的目标四、强化学习中的数据从哪里来五、强化学习的独特性 一、什么是强化学习 强化学习是机器通过与环境交互来实现目标的一种计算方法。 机器和环境的一轮交互是指,机器在环境的一个状态下做一个动作决…

【算法】【优选算法】滑动窗口(上)

目录 一、滑动窗口简介二、209.⻓度最⼩的⼦数组2.1 滑动窗口2.2 暴力枚举 三、3.⽆重复字符的最⻓⼦串3.1 滑动窗口3.2 暴力枚举 四、1004.最⼤连续1的个数III4.1 滑动窗口4.2 暴力枚举 五、1658.将x减到0的最⼩操作数5.1 滑动窗口5.2 暴力枚举 一、滑动窗口简介 其实就是利用…

软考高级之系统架构师系列之构件开发模型

如标题所述,本文面向于软考高级,具体来说是系统架构师。 有些概念,如生命周期,开发的几个阶段,不同的教程有些许出入。 本文偏理论,要在理解的基础上加以记忆,用于应付软考,有些地…

机器人零位、工作空间、坐标系及其变换,以UR5e机器人为例

机器人中的主要坐标系 在机器人中,常用的坐标系包括: 基坐标系(Base Frame):固定在机器人基座上的坐标系,用于描述机器人的整体位置和方向,是其他所有坐标系的参考点。 连杆坐标系&#xff08…