JavaScript (六)——JavaScript 变量和数据类型

目录

JavaScript 变量

JavaScript 变量

声明(创建) JavaScript 变量

Value = undefined

重新声明 JavaScript 变量

JavaScript 算数

 let 和 const (ES6)

JavaScript 数据类型

JavaScript 拥有动态类型

JavaScript 字符串

JavaScript 数字

JavaScript 布尔

JavaScript 数组

JavaScript 对象

Undefined 和 Null

声明变量类型


JavaScript 变量

变量是用于存储信息的"容器"

示例:

var x=5;
var y=6;
var z=x+y;

JavaScript 变量

与代数一样,JavaScript 变量可用于存放值(比如 x=5)和表达式(比如 z=x+y)。

变量可以使用短名称(比如 x 和 y),也可以使用描述性更好的名称(比如 age, sum, totalvolume)。

变量必须以字母开头

变量也能以 $ 和 _ 符号开头(不过我们不推荐这么做)

变量名称对大小写敏感(y 和 Y 是不同的变量)

JavaScript 语句和 JavaScript 变量都对大小写敏感。

声明(创建) JavaScript 变量

在 JavaScript 中创建变量通常称为"声明"变量。

我们使用 var 关键词来声明变量:

var carname;

变量声明之后,该变量是空的(它没有值)。

如需向变量赋值,请使用等号:

carname="Volvo";

不过,您也可以在声明变量时对其赋值:

var carname="Volvo";

在这里我突然想到了变量提升,变量提升就是使用var声明的变量会被提升到其作用域的最顶部,但是,它们的赋值过程不会被提升。这意呀着,如果你在声明之前访问这些变量,它们不会是undefined(在严格模式下是这样),但是如果你尝试访问它们的值,将会得到undefined,因为它们还没有被赋值。letconst声明的变量不会被提升。

函数声明会优先于变量声明被提升。这意味着,在同一个作用域内,如果一个函数声明和一个变量声明(使用var)具有相同的名称,那么函数声明会在变量声明之前被处理,因此会覆盖变量声明。

Value = undefined

在计算机程序中,经常会声明无值的变量。未使用值来声明的变量,其值实际上是 undefined。

在执行过以下语句后,变量 carname 的值将是 undefined:

var carname;

重新声明 JavaScript 变量

如果重新声明 JavaScript 变量,该变量的值不会丢失:

在以下两条语句执行后,变量 carname 的值依然是 "Volvo"

var carname="Volvo";
var carname;

JavaScript 算数

可以通过 JavaScript 变量来做算数,使用的是 = 和 + 这类运算符

y=5;
x=y+2;

 let 和 const (ES6)

在 2015 后的 JavaScript 版本 (ES6) 允许我们使用 const 关键字来定义一个常量,使用 let 关键字定义的限定范围内作用域的变量。

我们现在常用let来声明变量

JavaScript 数据类型

值类型(基本类型):字符串(String)、数字(Number)、布尔(Boolean)、空(Null)、未定义(Undefined)、Symbol。

Symbol 是 ES6 引入了一种新的原始数据类型,表示独一无二的值

引用数据类型(对象类型):对象(Object)、数组(Array)、函数(Function),还有两个特殊的对象:正则(RegExp)和日期(Date)

JavaScript 拥有动态类型

JavaScript 拥有动态类型。这意味着相同的变量可用作不同的类型

var x;               // x 为 undefined
var x = 5;           // 现在 x 为数字
var x = "John";      // 现在 x 为字符串

在 JavaScript 中,当你声明一个变量时,你不需要指定它的类型。JavaScript 引擎会根据赋值给变量的值自动推断变量的类型。

变量的数据类型可以使用 typeof 操作符来查看:

typeof "John"                // 返回 string
typeof 3.14                  // 返回 number
typeof false                 // 返回 boolean
typeof [1,2,3,4]             // 返回 object
typeof {name:'John', age:34} // 返回 object

JavaScript 字符串

字符串是存储字符(比如 "Bill Gates")的变量。

字符串可以是引号中的任意文本。可以使用单引号或双引号

如果周围有引号,要和周围的引号进行区分,比如周围的是用单引号,那字符串就是用双引号,反之使用单引号。

var answer="It's alright";
var answer="He is called 'Johnny'";
var answer='He is called "Johnny"';

JavaScript 数字

JavaScript 只有一种数字类型。数字可以带小数点,也可以不带

var x1=34.00;      //使用小数点来写
var x2=34;             //不使用小数点来写

极大或极小的数字可以通过科学(指数)计数法来书写:

var y=123e5;      // 12300000
var z=123e-5;     // 0.00123

JavaScript 布尔

布尔(逻辑)只能有两个值:true 或 false

var x=true;
var y=false;

JavaScript 数组

创建数组的方法:

1.

var cars=new Array();
cars[0]="Saab";
cars[1]="Volvo";
cars[2]="BMW";

2.condensed array

var cars=new Array("Saab","Volvo","BMW");

3.literal array

var cars=["Saab","Volvo","BMW"];

数组下标是基于零的,第一个项目是 [0],第二个是 [1],以此类推。

JavaScript 对象

对象由花括号分隔。在括号内部,对象的属性以名称和值对的形式 (name : value) 来定义。属性由逗号分隔

var person={firstname:"John", lastname:"Doe", id:5566};

上面例子中的对象 (person) 有三个属性:firstname、lastname 以及 id。

空格和折行无关紧要。声明可横跨多行:

var person={
firstname : "John",
lastname  : "Doe",
id        :  5566
};

对象属性有两种寻址方式:

name=person.lastname;
name=person["lastname"];
document.write(person.lastname + "<br>");
document.write(person["lastname"] + "<br>");

Undefined 和 Null

Undefined 这个值表示变量不含有值。 

var lastName;

可以通过将变量的值设置为 null 来清空变量

newName = null;

声明变量类型

当声明新变量时,可以使用关键词 "new" 来声明其类型:

var carname=new String;
var x=      new Number;
var y=      new Boolean;
var cars=   new Array;
var person= new Object;
JavaScript 变量均为对象。当您声明一个变量时,就创建了一个新的对象。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值