4.3 JavaScript变量

2024-05-04 05:28
文章标签 4.3 java script 变量

本文主要是介绍4.3 JavaScript变量,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

4.3.1 变量的声明

       JavaScript是一种弱类型的脚本语言,无论是数字、文本还是其他内容,统一使用关键词var加上变量名称进行声明,其中关键词var来源于英文单词variable(变量)的前三个字母。

可以在声明变量的同时对其指定初始值;也可以先声明变量,再另行赋值。例如:

var x = 2;
var msg = "Hello JavaScript!";
var name;

常见变量的赋值为数字或文本形式。当变量的赋值内容为文本时,需要使用引号(单引号、双引号均可)括住内容;当为变量赋值为数字的时候,内容不要加引号,否则会被当作字符串处理。 

JavaScript也允许使用一个关键词var同时定义多个变量。例如:

var x1, x2, x3; //一次定义了三个变量名称

同时定义的变量类型可以不一样,并且可为其中部分或全部变量进行初始化。例如:

var x1=2, x2="Hello", x3;

 由于JavaScript变量是弱类型的,因此同一个变量可以用于存放不同类型的值。例如可以声明一个变量初始化时用于存放数值,然后将其更改为存放字符串。代码如下:

var x = 99; //初始化时变量x存放的是数值99
x = "Hello"; //将变量x更改为存放字符串"Hello"

这段代码从语法上来说没有任何问题,但是为了良好的编程习惯不建议此种做法。应该将变量用于保存相同类型的值。 

 变量的声明不是必须的,可以不使用关键词var声明直接使用。例如:

msg1 = "Hello"
msg2 = "JavaScript";
msg = msg1+" "+msg2;
alert(msg); //运行结果为显示Hello JavaScript

上述代码中的msg1msg2msg均没有使用关键词var事先声明就直接使用了,这种写法也是有效的。当程序遇到未声明过的名称时,会自动使用该名称创建一个变量并继续使用。 

4.3.2 变量的命名规范

一个有效的变量命名需要遵守以下两条规则:

首位字符必须是字母( A- Za -z )、下划线( _ )或者美元符号( $ );
其他位置上的字符可以是下划线( _ )、美元符号( $ )、数字( 0-9 )或字母( A- Za -z )。

例如: 

var hello; //正确
var _hello; //正确
var $hello; //正确
var $x_$y; //正确
var 123; //不正确,首位字符必须是字母、下划线或者美元符号
var %x; //不正确,首位字符必须是字母、下划线或者美元符号
var x%x; //不正确,中间的字符不能使用下划线、美元符号、数字或字母以外的内容

常用的变量命名方式有Camel标记法、Pascal标记法和匈牙利类型标记法等。

  • Camel标记法:又称为驼峰标记法,该规则声明的变量首字母为小写,其他单词以大写字母开头。例如:var myFirstScriptvar myTest等。
  • Pascal标记法:该规则声明的变量所有单词首字母均大写。例如:var MyFirstScriptvar MyTest等。
  • 匈牙利类型标记法:该规则是在Pascal标记法的基础上为变量加一个小写字母的前缀,用于提示该变量的类型,如i表示整数、s表示字符串等。例如:var sMyFirstScriptvar iMyTest等。

4.3.3 JavaScript关键字和保留字

       JavaScript遵循ECMA-262标准中规定的一系列关键字规则,这些关键字不能作为变量或者函数名称。

全部关键字共计25个,如表所示。

       ECMA-262中还规定了一系列保留字,这些字是为将来的关键字而保留的单词,同样也不可以作为变量或者函数的名称。全部保留字共计31个,如表所示。 

这篇关于4.3 JavaScript变量的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/958415

相关文章

测试服务搭建之centos7下安装java

一 安装Java 1 创建普通用户 useradd userNameTest passwd userNameTest 提示输入密码:【输入wujian的密码】 user:userNameTest group:root passwd:123456789   2 给“userNameTest”分配root权限 vi /etc/sudoers 在文件中找到 # %wheel ALL=(

selenium +java 多个类公用driver问题

问题点:太久没有写selenium代码,居然把driver公用的问题忘记了,即:每写一个测试类,执行过程中都会新建一个窗口,这样应该说是非常不专业的。 大概想了一个方法,虽然看起来也不怎么专业,但感觉能用就很开心了。 解决步骤:                1 创建一个获取获取driver的方法getDriver()                2 创建成员变量,将 getDriver()赋值

IDEA +maven git tomcat database数据库 调试 插件 log4j Spring junit

前言 idea优化配置、常规配置、配置maven、git、tomcat、database数据库、调试配置、插件配置、log4j配置、Spring配置等等,稍后一一更新! 优化配置(#item1 “item1”) 打开文件 :“idea – > bin – >idea64.exe.vmoptions” -Xms: 初始内存;-Xmx : 最大内存;-ReservedCodeCache

4-Springboot集成FLOWABLE之流程驳回

目录标题 演示地址效果功能后端代码补充 演示地址 效果 功能 默认驳回到上一节点 后端代码 flowable自带驳回功能, 在源码ProcessInstanceResource.class下已有该功能,不需要自己额外去写 @ApiOperation(value = "Change the state a process instance", tags = { "Pr

bimface 模型集成-后端(java)上传、发起转换、获取转换状态

目录 前言后端架构流程存储表结构全局工具类先根据appid, appsecret 生成accesstoken, 保存到自己的存储服务器。利用保存的 accesstoken 上传模型发起转换获取转换状态根据bimface文件ID获取模型viewtoken, 获取到viewtoken就可以利用前端浏览模型或图纸了 前言 之前没有注意官方有个sdk,然后自己就实现了这么个逻辑。建议

JavaScript的变量申明提前

变量提升 JavaScript的函数定义有个特点,它会先扫描整个函数体的语句,把所有申明的变量“提升”到函数顶部: 只是将变量的申明提前,而不提前变量的值和函数的值 'use strict';function foo() {var x = 'Hello, ' + y;alert(x);var y = 'Bob';}foo(); 虽然是strict模式,但语句var x = 'Hell

Java ArryList

ArrayList简介 ArrayList就是传说中的动态数组,用MSDN中的说法,就是Array的复杂版本,它提供了如下一些好处: 1、动态的增加和减少元素; 2、实现了ICollection和IList接口 ; 3、灵活的设置数组的大小; ArrayList的基本用法 1、创建一个动态数组,并赋值 //创建一个动态数组ArrayList list = new ArrayL

SpringBoot 学习六:数据库的增删改查

1、新建一个Girl类,添加如下代码: package controlle;import javax.persistence.Entity;import javax.persistence.GeneratedValue;import javax.persistence.Id;@Entitypublic class Girl {@Id@GeneratedValueprivate Integer

SpringBoot 学习五:连接数据库

1、在pom.xml需要添加与数据库相关的两个依赖: <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-jpa</artifactId></dependency><dependency><groupId>mysql</groupId><artifactId>my

SpringBoot 学习四:macOS安装MySQL 以及报错解决

从MySQL官网下载Mysql,在本地安装好之后,用数据库连接工具Sequl Pro去连接数据库,发现报错了,报错信息有两种: Error1:Unable to connect to host 127.0.0.1 because access was denied.Double-check your username and password and ensure that access fro