php声明js变量类型,JavaScript 数据类型

本文详细介绍了JavaScript中的数据类型,包括字符串、数值、布尔值、数组和对象。JavaScript是一种动态类型语言,允许变量在不同时间保存不同类型的值。在处理数据时,了解数据类型至关重要,例如在数值和字符串相加时,JavaScript会将数值转换为字符串。此外,还提到了typeof运算符用于检测变量的类型,尽管它将数组和null都标记为object。
摘要由CSDN通过智能技术生成

JavaScript 数据类型

字符串值,数值,布尔值,数组,对象。

JavaScript 数据类型

JavaScript 变量能够保存多种数据类型:数值、字符串值、数组、对象等等:var length = 7;                             // 数字

var lastName = "Gates";                      // 字符串

var cars = ["Porsche", "Volvo", "BMW"];         // 数组

var x = {firstName:"Bill", lastName:"Gates"};    // 对象

数据类型的概念

在编程过程中,数据类型是重要的概念。

为了能够操作变量,了解数据类型是很重要的。

如果没有数据类型,计算机就无法安全地解决这道题:var x = 911 + "Porsche";

给 "Volvo" 加上 911 有意义吗?这么做会发生错误还是会产生一个结果?

JavaScript 会这样处理上面的例子:var x = "911" + "Porsche";

当数值和字符串相加时,JavaScript 将把数值视作字符串。

实例var x = 911 + "Porsche";

实例var x = "Porsche" + 911;

JavaScript 从左向右计算表达式。不同的次序会产生不同的结果:

JavaScript:var x = 911 + 7 + "Porsche";

结果:918Porsche

JavaScript:var x = "Porsche" + 911 + 7;

结果:Porsche9117

在第一个例子中,JavaScript 把 911 和 7 视作数值,直到遇见 "Porsche"。

在第二个例子中,由于第一个操作数是字符串,因此所有操作数都被视为字符串。

JavaScript 拥有动态类型

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

实例var x;               // 现在 x 是 undefined

var x = 7;           // 现在 x 是数值

var x = "Bill";      // 现在 x 是字符串值

JavaScript 字符串值

字符串(或文本字符串)是一串字符(比如 "Bill Gates")。

字符串被引号包围。您可使用单引号或双引号:

实例var carName = "Porsche 911";   // 使用双引号

var carName = 'Porsche 911';   // 使用单引号

您可以在字符串内使用引号,只要这些引号与包围字符串的引号不匹配:

实例var answer = "It's alright";             // 双引号内的单引号

var answer = "He is called 'Bill'";    // 双引号内的单引号

var answer = 'He is called "Bill"';    // 单引号内的双引号

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 数组

JavaScript 数组用方括号书写。

数组的项目由逗号分隔。

下面的代码声明(创建)了名为 cars 的数组,包含三个项目(汽车品牌):

实例var cars = ["Porsche", "Volvo", "BMW"];

数组索引基于零,这意味着第一个项目是 [0],第二个项目是 [1],以此类推。

JavaScript 对象

JavaScript 对象用花括号来书写。

对象属性是 name:value 对,由逗号分隔。

实例var person = {firstName:"Bill", lastName:"Gates", age:62, eyeColor:"blue"};

上例中的对象(person)有四个属性:firstName、lastName、age 以及 eyeColor。

typeof 运算符

您可使用 JavaScript 的 typeof 来确定 JavaScript 变量的类型:

typeof 运算符返回变量或表达式的类型:

实例typeof ""                  // 返回 "string"

typeof "Bill"              // 返回 "string"

typeof "Bill Gates"          // 返回 "string"

实例typeof 0                   // 返回 "number"

typeof 314                 // 返回 "number"

typeof 3.14                // 返回 "number"

typeof (7)                 // 返回 "number"

typeof (7 + 8)             // 返回 "number"

typeof 运算符对数组返回 "object",因为在 JavaScript 中数组属于对象。

Undefined

在 JavaScript 中,没有值的变量,其值是 undefined。typeof 也返回 undefined。

实例var person;                  // 值是 undefined,类型是 undefined

任何变量均可通过设置值为 undefined 进行清空。其类型也将是 undefined。

实例person = undefined;          // 值是 undefined,类型是 undefined

空值

空值与 undefined 不是一回事。

空的字符串变量既有值也有类型。

实例var car = "";                // 值是 "",类型是 "string"

Null

在 JavaScript 中,null 是 "nothing"。它被看做不存在的事物。

不幸的是,在 JavaScript 中,null 的数据类型是对象。

您可以把 null 在 JavaScript 中是对象理解为一个 bug。它本应是 null。

您可以通过设置值为 null 清空对象:

实例var person = null;           // 值是 null,但是类型仍然是对象

您也可以通过设置值为 undefined 清空对象:

实例var person = undefined;     // 值是 undefined,类型是 undefined

Undefined 与 Null 的区别

Undefined 与 null 的值相等,但类型不相等:typeof undefined              // undefined

typeof null                   // object

null === undefined            // false

null == undefined             // true

原始数据

原始数据值是一种没有额外属性和方法的单一简单数据值。

typeof 运算符可返回以下原始类型之一:string

number

boolean

undefined

实例typeof "Bill"              // 返回 "string"

typeof 3.14                // 返回 "number"

typeof true                // 返回 "boolean"

typeof false               // 返回 "boolean"

typeof x                   // 返回 "undefined" (假如 x 没有值)

复杂数据

typeof 运算符可返回以下两种类型之一:function

object

typeof 运算符把对象、数组或 null 返回 object。

typeof 运算符不会把函数返回 object。

实例typeof {name:'Bill', age:62} // 返回 "object"

typeof [1,2,3,4]             // 返回 "object" (并非 "array",参见下面的注释)

typeof null                  // 返回 "object"

typeof function myFunc(){}   // 返回 "function"

typeof 运算符把数组返回为 "object",因为在 JavaScript 中数组即对象

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值