一、什么是变量?

首先了解一下什么是内存:内存就是保存程序在运行过程中,所需要用到的数据8bit(比特是表示信息的最小单位)。

  • 8bit=1byte
  • 1024byte=1MB
  • 1024MB=1GB
  • 1024GB=1T

变量是用于存放东西的容器,通过变量名获取数据,甚至可以修改数据(变量就是一个装东西的盒子)

变量:就是程序在内存中申请的一块用来存放数据的储存空间。(类似于酒店中的房间,一个房间就可以看作是一个变量)

变量名:内存空间的别名,可以自定义(类似于房间号);

变量值:保存在内存空间中的数据

二、变量的使用

变量在使用的时候分为两部分:1、声明变量;2、赋值

(一)声明变量

var 变量名; //声明变量
var age ; //声明一个名为 age的变量
age = 18; //给变量赋值

var 是一个JS关键字,用来声明变量(variable变量的意思)。使用该关键字之后,计算机自动为变量分配内存空间,不需要程序员自己操作。

age 是程序猿定义的变量名,需要通过变量名来访问内存中分配的空间。

变量的初始化

var age = 18; //声明变量同时赋值为 18

声明一个变量并且赋值,称之为变量的初始化。

注意:在声明过程中,尽量不要忽略var关键字,否则声明的是“全局变量”

实例1:

1、弹出一个输入框,提示用户输入用户名。

2、弹出一个对话框,输出用户刚才输入的姓名。

prompt()中是用户输入的信息,然后将其存储到 useName 变量中去。

var useName =prompt('请输入用户名');
alert(useName);

 实例2:

声明一个变量。并且在console.log() 使用变量名 取代双引号(双引号标注的是 字符串)

打印 变量stuName 的值到控制台上

var stuName="PP.XZ"
console.log(stuName); // 输出的是PP.XZ
consloe.log("stuName"); //输出的是stuName

 (二)、对变量进行存取操作

1、获取变量的值——GET操作

var userPwd="1234567";  //声明userPwd变量的值为1234567

console.log(userPwd);
document.log(userPwd);
var new=userPwd; //将userPwd变量的值赋值给new变量
var new=userPwd;  创建新变量,赋值为已有变量的值

2、保存(设置)变量的值——SET操作

var userPwd="123";

oldPwd="456";  // 变量值的变换,表明oldPwd的值从之前的123变成了现在的456
oldPwd=newPwd; // 表示把oldPwd的值变换成newPwd的值
oldPwd=newPwd;   这条语句对于变量newPwd 是GET操作(获取);对于变量 oldPwd是SET操作(设置)

注意:= 赋值,永远都是将等号=右边的东西保存给等号=左边的东西,等号(=)左边必须是变量

三、变量的语法扩展

(一)、更新变量

一个变量被重新赋值以后,它原有的值就会被覆盖,变量值以最后赋的值为准。

var age = 112;
console.log(age);
age = 223;
console.log(age);

(二)、同时声明多个变量

同时声明多个变量,只需要写一个 var ,多个变量名之间使用英文逗号(,)隔开

语法:

var 变量名1,变量名2,......,变量名n;

例如:多个变量之间使用逗号隔开。

var age=18;
var name="枯燥";
var address = '中国'; //等价于 var age=18,
name="枯燥",
address = '中国';

(三)、声明变量的特殊情况

1、只声明变量但是不赋值

结果未知,所以输出结果就是 undefined(未定义的)

var qq;
console.log(qq);

2、不声明变量也不赋值

既没有这个变量也没有相应的变量值,结果就会报错。

(qqh这个变量无法找到 defined)

3、不声明变量直接赋值

没有 var 的写法会使 变量变成全局变量

qq=23456453
console.log(qq);

四、变量命名规范

  1、变量名由字母(A-Za-z)、数字(0-9)、英文下划线(_)或是美元符($)组成;

  2、严格区分大小写,Name和name是两个不同的变量;最好不要使用 name命名,name是window里的一个属性

  3、变量名不能是数字开头,1age是错误的;

  4、不可以使用 关键字与 保留字,例如var 、class;

  5、尽量见名知其以,变量名必须有意义,更推荐(如var stuName;)

  6、遵循“驼峰命名法”,变量名为合成词时,第一格单词全小写,第二个单词首字母大写;变量名只有一个单词时就全写成小写

五、交换两个变量值

要求:交换两个变量的值(实现思路:使用一个临时变量 用来做中间存储)

核心思路:

需要一个临时变量 dq;

将ap1 给临时变量 dq;

将ap2 里面的值给 ap1;

将临时变量 dq里面的值给 ap2;

var ap1="春天";
var ap2="夏天";
var dq;
dp=ap1;
ap1=ap2;
ap2=dp;
console.log('ap1 = '+ap1);
console.log('ap2 = '+ap2);

五、什么是字面量

字面量,是在源代码中一个固定值的表示方法,通俗来说就是字面量如何表达这个值。

1、数字字面量:1、9、3

2、字符串字面量:'二月','hello world'

3、布尔字面量:true、false

字面量都是可以直接去使用的,但是一般不会直接使用字面量,因为直接使用非常麻烦,变量是更好地方法可以用来保存字面量。

var ap="夏天";

六、变量小结

1、为什么需要变量?—— 需要变量来保存一些数据

2、变量是什么?—— 变量就是一个容器,用以存放数据,方便以后使用里面的数据。

3、变量的本质是什么?—— 变量是内存里面的一块空间,用来存储数据

4、变量如何使用?—— 使用变量的时候,一定要先声明变量,然后赋值。声明变量的本质是

5、什么是变量的初始化?—— 声明变量并且赋值称之为变量的初始化

6、变量的命名规范 —— 变量名要尽量规范,驼峰命名,见名知意

7、交换两个变量的值

JavaScript变量和字面量的更多相关文章

  1. 完整的JavaScript包括三部分、script标签、JavaScript的基本语法以及变量和字面量的关系

    完整的JavaScript包括三大部分: -ECMAScript   JavaScript的开发规范:提供核心语言功能 -DOM   document object model   文档对象模型:提供 ...

  2. javascript中对象字面量的理解

    javascript中对象字面量与数组字面量 第一部分 我们知道JavaScript中的数据类型有基本数据类型和引用类型,其中Object类型就是非常常用的类型.那么如果创建一个Object类型的实例 ...

  3. Java常量,变量,对象(字面量)在JVM内存中的存储位置

    Java常量,变量,对象(字面量)在JVM内存中的存储位置 2019-02-26 18:13:09 HD243608836 阅读数 540  收藏 更多 分类专栏: JAVA jvm   苦苦研究了快 ...

  4. JavaScript模式:字面量和构造函数

    本篇主要讨论了通过字面量以构造对象的方法,比如对象.数组以及正则表达式等字面量的构造方法,同时还讨论了与类似Object()和Array()等内置构造函数相比,为什么基于字面量表示法是更为可取. 对象 ...

  5. 初涉JavaScript模式 (3) : 字面量

    什么是字面量? 在编程语言中,字面量是一种表示值的记法.例如,"Hello, World!" 在许多语言中都表示一个字符串字面量(string literal ),JavaScri ...

  6. javascript中对象字面量与数组字面量

    第一部分 我们知道JavaScript中的数据类型有基本数据类型和引用类型,其中Object类型就是非常常用的类型.那么如果创建一个Object类型的实例呢?下面我介绍两种方法: 第一:构造函数法. ...

  7. Go语言中初始化变量中字面量&Type{}、new、make的区别

    Go语言中new和make是内建的两个函数,主要用来创建分配类型内存.在我们定义生成变量的时候,可能会觉得有点迷惑,其实他们的规则很简单,下面我们就通过一些示例说明他们的区别和使用. 变量的声明 va ...

  8. javascript字面量

    在JavaScript里面,字面量包括:字符串字面量(string literal ).数组字面量(array literal)和对象字面量(object literal),另外还有函数字面量(fun ...

  9. JS基础_字面量和变量

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

随机推荐

  1. Linux下编译安装Python-3.6.5

    1.下载Python-3.6.5安装包 在Python官网(https://www.python.org/downloads/)下载对应的安装包,选择3.6.5的linux版本,如下图: 2.将安装包 ...

  2. 那些堪称神器的 Chrome 插件

    Chrome 的简洁快速以及丰富的插件种类使得它在国内日益盛行,帮助了我们很多 Chrome 用户提升了工作效率,而今天要给大家推荐8款实用甚至堪称神器的 Chrome 插件,希望对提升大家的工作效率 ...

  3. 安装docker-下载加速、失败、成功安装

    前提:已装VMware虚拟机和Centos系统(具体安装包和过程可以百度) 先看这里:非root身份登录系统需要在下面的命令前加“sudo ”(sudo:代表给权限,用root登录则不需要输入) 一. ...

  4. 【HANA系列】SAP HANA SQL获取当前月的第一天

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA SQL获取当前 ...

  5. 12.持久性后门----Ettercap之ARP中毒----RAR/ZIP & linux密码破解----kali上检测rootkits

    持久性后门 生成PHP shell weevely generate 密码 /root/Desktop/404.php 靶机IP/404.php weevely http://192.168.1.10 ...

  6. idea把java web项目打成war包

    1.新建artifacts 2.设置你的目录内容路径 3.找到项目web或webapp的路径 4.可以直接添加已经跑通的项目 5.配置完成点OK 6.编译打成war包 7.点击编译结束打完收工 8.找 ...

  7. docker--docker 的web可视化管理工具

    12 docker 的web可视化管理工具 12.1 常用工具介绍 当 Docker 部署规模逐步变大后,可视化监控容器环境的性能和健康状态将会变得越来越 重要. Docker的图形化管理工具,提供状 ...

  8. 分享一个linux系统中采用嵌套for循环比较两个数组内容,并输出相同值的shell脚本

    #!/bin/bash array1=(1 3 5 6 7 9) array2=(3 4 9) echo array1=${array1[@]} echo array2=${array2[@]} fo ...

  9. [转帖]CBO和RBO

    http://www.itpub.net/thread-263395-1-1.html 参数不能随便改啊.. optimizer_features_enable('8.1.7') ORACLE 提供了 ...

  10. [转帖]安全公告【安全公告】CVE-2019-0708远程桌面服务远程代码执行漏洞

    [安全公告]CVE-2019-0708远程桌面服务远程代码执行漏洞 https://www.landui.com/help/nshow-9716.html 漏洞层出不穷 漏洞信息: 2019年5月14 ...