JavaScript 数据类型
JavaScript 变量能够保存多种数据类型:数值、字符串值、数组、对象、undefined、null等等
var length = 7; // 数字 var lastName = "Gates"; // 字符串 var cars = ["Porsche", "Volvo", "BMW"]; // 数组 var x = {firstName:"Bill", lastName:"Gates"}; // 对象 var un; //undefined类型 var str = null; //null类型
JavaScript字符串值
字符串(或文本字符串)是一串字符(比如 "Bill Gates")。
字符串被引号包围。您可使用单引号或双引号
实例:
var carName = '哈士奇'; //使用单引 var carName = "哈士奇"; //使用双引
当数值和字符串相加时,JavaScript 将把数值视作字符串。
实例:
var num = 911; var str = '哈士奇'; //输出 console.log(num+str); //输出结果 911哈士奇 //这是一个字符类型
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 数组用方括号书写。
数组的项目由逗号分隔。
下面的代码声明(创建)了名为 dogs 的数组,包含三个项目(宠物名称)
实例:
var dogs = new Array();//空数组 var dogs = new Array(num值); dogs[0] = 'cat'; dogs.push = 'endDog'; ... var dogs = []; //空数组 var dogs = ["dog", "cat", "penguin"]; //长度为3的一个数组 //添加元素 dogs[0] = 'cat'; //按下标添加元素 ... //向数组末尾添加元素 dogs.push = 'endDog';
数组索引基于零,这意味着第一个项目是 [0],第二个项目是 [1],以此类推。
JavaScript 对象
JavaScript 对象用花括号来书写。
对象属性是 name:value 对,由逗号分隔
实例:
var Hero = { name = '关羽', sex='男', age=18, run = function(){ alert(this.name+'正在飞奔'); } }
以上字面量对象(Hero)有三个属性:name、sex、age和一个方法:run()
Undefined
在 JavaScript 中,没有值的变量,其值是 undefined。typeof 也返回 undefined。
实例:
var person; // 值是 undefined,类型是 undefined
任何变量均可通过设置值为 undefined 进行清空。其类型也将是 undefined
空值
空值与 undefined 不是一回事。
空的字符串变量既有值也有类型。
实例:
var car = ""; // 值是 "",类型是 "string"
Null
在 JavaScript 中,null 是 "nothing"。它被看做不存在的事物。
在 JavaScript 中,null 的数据类型是对象。
可以把 null 在 JavaScript 中是对象理解为一个 bug。它本应是 null。
可以通过设置值为 null 清空对象:
实例:
var person = null; // 值是 null,但是类型仍然是对象
可以通过设置值为 undefined 清空对象
Undefined 与 Null 的区别
Undefined 与 null 的值相等,但类型不相等:
实例:
typeof undefined // undefined typeof null // object null === undefined // false null == undefined // true
typeof 运算符
可使用 JavaScript 的 typeof 来确定 JavaScript 变量的类型:
typeof 运算符返回变量或表达式的类型:
实例:
var name = '哈士奇'; var age = 17; var flag = true; var run; var eat = ''; var dogs = ['cat','dog','penguin']; type of name //返回string type of age //返回number type of flag //返回boolean type of run //返回undefined type of eat //返回null type of dogs //返回object
typeof 运算符把对象、数组或 null 返回 object。
注释
JavaScript 注释用于解释 JavaScript 代码,增强其可读性
JavaScript 注释也可以用于在测试替代代码时阻止执行。
单行注释
单行注释以 // 开头。
任何位于 // 与行末之间的文本都会被 JavaScript 忽略(不会执行)。
本例在每条代码行之前使用单行注释:
实例:
/ 改变标题: document.getElementById("myH").innerHTML = "我的第一张页面"; // 改变段落: document.getElementById("myP").innerHTML = "我的第一个段落。";
多行注释
多行注释以 /* 开头,以 */ 结尾。
任何位于 /* 和 */ 之间的文本都会被 JavaScript 忽略。
本例使用多行注释(注释块)来解释代码
实例:
/* 下面的代码会改变 网页中 id = "myH" 的标题 以及 id = "myP" 的段落: */ document.getElementById("myH").innerHTML = "我的第一张页面"; document.getElementById("myP").innerHTML = "我的第一个段落。";