变量是指程序中一个已经命名的存储单元,它的主要作用就是为数据操作提供存放信息的容器。变量是相对常量而言的。常量是一个不会改变的固定值,而变量的值可能会随着程序的执行而改变。变量有两个基本特征,即变量名和变量值。为了便于理解,可以把变量看作是一个贴着标签的盒子,标签上的名字就是这个变量的名字(即变量名),而盒子里面的东西就相当于变量的值。

1.变量的声明

在JavaScript中,使用变量前需要先声明变量,所有的JavaScript变量都由关键字var声明,语法格式如下:

var variablename;

variablename是声明的变量名,例如,声明一个变量username,代码如下:

varusername;

另外,可以使用一个关键字var同时声明多个变量,例如:

vara,b,c;

2.变量的赋值

在声明变量的同时也可以使用等于号(=)对变量进行初始化赋值,例如,声明一个变量lesson并对其进行赋值,值为一个字符串“零基础学JavaScript”,代码如下:

varlesson="零基础学JavaScript";

另外,还可以在声明变量之后再对变量进行赋值,例如:

01  varlesson;

02  lesson="零基础学JavaScript";

在JavaScript中,变量可以不先声明而直接对其进行赋值。例如,给一个未声明的变量赋值,然后输出这个变量的值,代码如下:

01  str= "这是一个未声明的变量";

02  document.write(str);

运行结果为:

这是一个未声明的变量

虽然在JavaScript中可以给一个未声明的变量直接进行赋值,但是建议在使用变量前就对其声明,因为声明变量的最大好处就是能及时发现代码中的错误。由于JavaScript是采用动态编译的,而动态编译是不易于发现代码中的错误的,特别是变量命名方面的错误。

关于声明变量的两点说明:

(1)如果只是声明了变量,并未对其赋值,则其值默认为undefined。

(2)可以使用var语句重复声明同一个变量,也可以在重复声明变量时为该变量赋一个新值。

例如,定义一个未赋值的变量a和一个进行重复声明的变量b,并输出这两个变量的值,代码如下:

01  vara;

02  varb = "你好JavaScript";

03  varb = "零基础学JavaScript";

04  document.write(a);

05  document.write("<br>");

06  document.write(b);

运行结果为:

undefined

零基础学JavaScript

本文摘自明日科技出版的《零基础学JavaScript》,转载请注明出处!!! 

avaScript中变量的声明和赋值的更多相关文章

  1. PL/SQL编程基础(二):变量的声明、赋值、(赋值、连接、关系、逻辑)运算符

    变量的声明.赋值.运算符 1.声明并使用变量 变量可以在声明时赋值,也可以先定义后赋值: 使用%TYPE与%ROWTYPE可以根据已有类型定义变量. PL/SQL是一种强类型的编程语言,所有的变量都必 ...

  2. oracle 存储过程 变量的声明和赋值的3种方式

      oracle 存储过程 变量的声明和赋值的3种方式 CreationTime--2018年8月31日16点00分 Author:Marydon 1.声明变量的3种方式 按照数据类型的声明方式进行区 ...

  3. js中变量的声明

    大家都知道js中变量的声明是要提前的,下面有4个样例: 1.if(!"t" in window){  var t = 1; }       alert(t);答案是undefine ...

  4. [转] SQL Server中变量的声明和使用方法

    原文地址 SQL Server中变量的声明和使用方法 声明局部变量语法: DECLARE @variable_name DataType 其中 variable_name为局部变量的名称,DataTy ...

  5. Robot Framework--07 变量的声明、赋值及其使用

    转自:http://blog.csdn.net/tulituqi/article/details/7984642 一.变量的声明 1.变量标识符 每个变量都可以用  变量标识符{变量名}    来进行 ...

  6. SQL SERVER中变量的定义、赋值与使用

      本文面向对SQL SERVER中变量操作不熟悉的用户,希望能使他们在看完本文后能对变量操作有具体和全面的认识.   在学习SQL SERVER的过程中,很多时候需要对某些单独的值进行调试,这时就需 ...

  7. ES6 中变量的解构赋值

    1. 数组的解构赋值 解构: ES6 中允许按照一定的模式从数组和对象中提取值,然后对变量进行赋值,这被称为解构(Destructuring). 1. 基本用法 本质上,这种写法属于"模式匹 ...

  8. 关于makefile中变量的多次赋值以及override指令

    1 基本原则如下 1.1 原则1 变量的普通赋值是有先后顺序的,后面的赋值会覆盖掉前面的赋值. 1.2 原则2 使用的时候,用的是其前面最后的赋值,就算其后面有使用了override指令的赋值也不会影 ...

  9. ES6中变量的解构赋值

    1.数组的解构赋值 基本用法 ES6 允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destructuring). 输出: 上面代码表示,可以从数组中提取值,按照对应位置,对变 ...

随机推荐

  1. java归并排序

    代码如下: public class MergeSort { public static void mergeSort(DataWrap [] data) { sort(data , 0 , data ...

  2. Swoole 源码分析——Server模块之TaskWorker事件循环

    swManager_start 创建进程流程 task_worker 进程的创建可以分为三个步骤:swServer_create_task_worker 申请所需的内存.swTaskWorker_in ...

  3. nyoj_17_单调递增最长子序列_201403121516

    单调递增最长子序列 时间限制:3000 ms  |  内存限制:65535 KB 难度:4   描述 求一个字符串的最长递增子序列的长度如:dabdbf最长递增子序列就是abdf,长度为4   输入 ...

  4. springcloud(十一):服务网关Zuul高级篇

    时间过的很快,写springcloud(十):服务网关zuul初级篇还在半年前,现在已经是2018年了,我们继续探讨Zuul更高级的使用方式. 上篇文章主要介绍了Zuul网关使用模式,以及自动转发机制 ...

  5. 《Android源代码设计模式解析与实战》读书笔记(十八)

    第十八章.代理模式 代理模式也称托付模式,是结构型设计模式之中的一个.是应用广泛的模式之中的一个. 1.定义 为其它对象提供一种代理以控制对这个对象的訪问. 2.使用场景 当无法或不想直接訪问某个对象 ...

  6. Hive权限之审计

    因为在生产环境中大量使用hive.而hive的权限又较弱,假设可以记录全部hive操作,在增强安全性的同一时候,还可以统计hive表的使用频率:同一时候假设可以记录hql的開始和结束时间,则可以找出系 ...

  7. 代理serverSquid3的配置

    1.安装squid3 sudo apt-get install squid3 2,配置squid3 sudo cd /etc/squid3 sudo vim squid.conf /http_acce ...

  8. apache ant解压zip。支持多级文件夹解压

    package cn.liuc.util; import java.io.File; import java.io.FileOutputStream; import java.io.IOExcepti ...

  9. 【SDOI2008】【BZOJ2049】Cave 洞穴勘測

    Description 辉辉热衷于洞穴勘測.某天,他依照地图来到了一片被标记为JSZX的洞穴群地区.经过初步勘測,辉辉发现这片区域由n个洞穴(分别编号为1到n)以及若干通道组成.而且每条通道连接了恰好 ...

  10. MapReduce:具体解释Shuffle过程

    Shuffle过程是MapReduce的核心,也被称为奇迹发生的地方.要想理解MapReduce, Shuffle是必需要了解的.我看过非常多相关的资料,但每次看完都云里雾里的绕着,非常难理清大致的逻 ...