JS基础:变量的详解

你好,我是云桃桃。

一个希望帮助更多朋友快速入门 WEB 前端的程序媛。

云桃桃,大专生,一枚程序媛,感谢关注。回复 “前端基础题”,可免费获得前端基础 100 题汇总,回复 “前端基础路线”,可获取完整web基础路线导图。

308篇原创内容-更多前端系列内容可以go公众.h:云桃桃

后台回复“前端基础路线”可获取前端基础学习路线

后台回复“前端基础题”可得到前端基础100题汇总,持续更新中

后台回复“前端电子书”可获取20+本精选电子书

前言

变量是编程中的基础概念,它们就像是编程语言中的“盒子”,是用来“装东西”的,用来存放各种数据。

那我们一起来看看吧。

声明变量

首先,我们如何创建一个变量呢?非常简单,使用var关键字即可。

var message

此时,如果一个变量声明了但未赋值,它的值将是undefined

console.log(message) // 输出: undefined

现在message变量已经准备好了,我们可以用=赋值给它:

message = 'Hello, JS!'
console.log(message) // 输出: Hello, JS!

变量命名规则(标识符)

给变量起名字时,要记住几个规则:

  • 名称可以包含字母、数字、下划线(_)和美元符号($)。

var firstName = 'John'
var _age = 30
var $salary = 5000
  • 名称必须以字母、下划线或美元符号开头,禁止以数字开头。

  • 名称对大小写敏感,比如jsWordjsword是两个不同的变量。

var jsWord = 'hello!'
var jsword = 30
console.log(jsWord) // 输出: hello!
console.log(jsword) // 输出: 30
  • 不要使用 JavaScript 的保留字,比如varletforiffunction等。更多保留字见这篇文章。JavaScript 常见的40个保留字大全!

比如,这样写。

var var = 'abc'

在浏览器控制台,也会报错。如图。

图片

数据类型

变量可以存放多种类型的数据,通过=是赋值运算符。这意味着它用来给变量来赋值。比如,最常见的数字和字符串。

var age = 25 // 数字
var name = 'Alice' // 字符串

我们还可以使用变量进行算术运算,就像在代数中一样。

var sum = 10 + 5 // 15
var difference = 10 - 5 // 5

字符串也可以通过加号+进行连接。

var greeting = 'Hello, ' + name + '!'
console.log(greeting) // 输出: Hello, Alice!

重复声明

在同一个作用域内,重复声明一个变量不会重置它的值。

var count = 1
var count // 声明不会改变 count 的值
console.log(count) // 输出: 1

多变量声明

你可以在一条语句中声明多个变量,以英文逗号分隔。

var firstName = 'John',lastName = 'Doe',year = 1990

变量的作用域

变量有一个作用域,决定了变量在哪里可以被访问和修改。

在函数内定义的,在函数外无法访问。比如:

function myFunction() {var insideVal = "I'm inside!"  // 在外面访问不了
}
var outsideVal = "I'm outside!"
console.log(insideVal) //  // 不输出任何东西,且会在控制台报错

OK,本文完。

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据库SQL语言实战(七)

前言 这次的有一点点难~~~~~我也写了好久 练习题 题目一 在学生表pub.student中统计名字(姓名的第一位是姓氏,其余为名字,不考虑复姓)的使用的频率,将统计结果放入表test5_01中 create table test5_01(First_name…

Docker容器:Docker-Consul 的容器服务更新与发现

目录 前言 一、什么是服务注册与发现 二、 Docker-Consul 概述 1、Consul 概念 2、Consul 提供的一些关键特性 3、Consul 的优缺点 4、传统模式与自动发现注册模式的区别 4.1 传统模式 4.2 自动发现注册模式 5、Consul 核心组件 5.1 Consul-Template组件 5.2 Consu…

esp32+mqtt协议+paltformio+vscode+微信小程序+温湿度检测

花费两天时间完成了这个项目(不完全是,属于是在resnet模型训练和温湿度检测两头跑......模型跑不出来,又是第一次从头到尾独立玩硬件,属于是焦头烂额了......,完成这个项目后,我的第一反应是写个csdn&#…

如何delphi7中添加自定义的控件或组件

1.问题 为了编写方便,会自己生成一些自定义的控件。 XXX.PAS:源码文件,后续可以再调整 XXX.DCU:编译后的文件 2.解决办法 1.自定义控件的文件如下 2.将这些文件保留在程式代码中,万一丢失会导致程式开启后报是否忽略 3.选择菜单栏中的com…

简述前后端分离架构案例

Hello , 这里是小恒不会java 。今晚1点写写关于RESTful接口的使用案例,本文会通过django原生js前后端分离的案例简单讲解。本文带你认识一下简化版的前后端分离架构 代码 本文案例代码在GitHub上 https://github.com/lmliheng/fontend前后端分离 先说说什么是前后…

ue引擎游戏开发笔记(32)——为游戏添加新武器装备

1.需求分析: 游戏中角色不会只有一种武器,不同武器需要不同模型,甚至可能需要角色持握武器的不同位置,因此需要添加专门的武器类,方便武器后续更新,建立一个武器类。 2.操作实现: 1.在ue5中新建…

cmake进阶:文件操作

一. 简介 前面几篇文章学习了 cmake的文件操作,写文件,读文件。文章如下: cmake进阶:文件操作之写文件-CSDN博客 cmake进阶:文件操作之读文件-CSDN博客 本文继续学习文件操作。主要学习 文件重命名,删…

深入了解C/C++的内存区域划分

🔥个人主页:北辰水墨 🔥专栏:C学习仓 本节我们来讲解C/C的内存区域划分,文末会附加一道题目来检验成果(有参考答案) 一、大体有哪些区域?分别存放什么变量开辟的空间? …

深度神经网络中的不确定性研究综述

A.单一确定性方法 对于确定性神经网络,参数是确定的,每次向前传递的重复都会产生相同的结果。对于不确定性量化的单一确定性网络方法,我们总结了在确定性网络中基于单一正向传递计算预测y *的不确定性的所有方法。在文献中,可以找…

Fireworks AI和MongoDB:依托您的数据,借助优质模型,助力您开发高速AI应用

我们欣然宣布 MongoDB与 Fireworks AI 正携手合作 让客户能够利用生成式人工智能 (AI) 更快速、更高效、更安全地开展创新活动 Fireworks AI由 Meta旗下 PyTorch团队的行业资深人士于 2022 年底创立,他们在团队中主要负责优化性能、提升开发者体验以及大规模运…

【数据可视化-02】Seaborn图形实战宝典

Seaborn介绍 Seaborn是一个基于Python的数据可视化库,它建立在matplotlib的基础之上,为统计数据的可视化提供了高级接口。Seaborn通过简洁美观的默认样式和绘图类型,使数据可视化变得更加简单和直观。它特别适用于那些想要创建具有吸引力且信…

重写muduo之EPollPoller

1、EPollPoller.h EPollPoller的主要实现:作为poller的派生类,把基类给派生类保留的这些纯虚函数的接口实现出来。 override表示在派生类里面,这些方法是覆盖方法。必须由编译器来保证在基类里面一定有这些函数的接口的声明。在派生类要重写…