javascript复合数据类型:1、Object类型,是一组由键、值组成的无序集合;2、Array类型,是一组有序数据的集合,数组中的每个成员被称为元素,每个元素的名称被称为数组下标;3、Function类型,是一段具有特定功能的代码块。
本教程操作环境:windows7系统、
javascript
1.8.5版、Dell G3电脑。
JavaScript 中的数据类型可以分为两种类型:
基本数据类型(值类型):字符串(String)、数字(Number)、布尔(Boolean)、空(Null)、未定义(Undefined)、Symbol;
引用数据类型(复合数据类型):对象(Object)、数组(Array)、函数(Function)。
立即学习
“
Java免费学习笔记(深入)
”;
JavaScript的复合数据类型
1、Object 类型
Object数据类型,称为对象,是一组由键、值组成的无序集合。可以用new操作符后跟要创建的对象类型的名称来创建。也可以用字面量表示法创建。在其中添加不同名(包含空字符串在内的任意字符串)的属性。
1)构造对象
使用 new 运算符调用构造函数,可以构造一个实例对象。具体用法如下:
参数说明如下:
objectName:返回的实例对象。
functionName:构造函数,与普通函数基本相同,但是不需要 return 返回值,返回实例对象,在函数内可以使用 this 预先访问。
args:实例对象初始化配置参数列表。
示例
下面示例使用不同类型的构造函数定义各种实例。
var o = new Object(); //定义一个空对象
var a = new Array(); //定义一个空数组
var f = new Function(); //定义一个空函数
2)对象直接量
使用直接量可以快速创建对象,也是最高效、最简便的方法。具体用法如下:
在对象直接量中,属性名与属性值之间通过冒号进行分隔,属性值可以是任意类型的数据,属性名可以是 JavaScript 标识符,或者是字符串型表达式。属性于属性之间通过逗号进行分隔,最后一个属性末尾不需要逗号。
在 JavaScript 中,对象类型的键都是字符串类型的,值则可以是任意数据类型。要获取对象中的某个值,可以使用对象名.键的形式,如下例所示:
使用HTML,CSS,JavaScript开发Android应用程序 英文文字pdf版附源文件
如果你了解HTML,CSS和JavaScript,您已经拥有所需的工具开发Android应用程序。本动手本书展示了如何使用这些开源web标准设计和建造,可适应任何Android设备的应用程序 - 无需使用Java。您将学习如何创建一个在您选择的平台的Android友好的网络应用程序,然后转换与自由PhoneGap框架到一个原生的Android应用程序。了解为什么设备无关的移动应用是未来的潮流,并开始构建应用程序,提供更
下载
2、Array 类型
数组(Array)是一组按顺序排列的数据的集合,数组中的每个值都称为元素(Element),每个元素的名称(键)被称为数组下标(Index)。数组的长度是弹性的、可读写的。
数组中可以包含任意类型的数据。
在 JavaScript 中定义(创建或者声明)数组的方法有两种:构造数组和数组直接量。
1)构造数组
使用 new 运算符调用 Array() 类型函数时,可以构造一个新数组。
示例:
直接调用 Array() 函数,不传递参数,可以创建一个空数组。
传递多个值,可以创建一个实数组。
每个参数指定一个元素的值,值得类型没有限制。参数的顺序也是数组元素的顺序,数组的 length 属性值等于所传递参数的个数。
传递一个数值参数,可以定义数组的长度,即包含元素的个数。
参数值等于数组 length 的属性值,每个元素的值默认值为 undefined。
如果传递一个参数,值为 1,则 JavaScript 将定义一个长度为 1 的数组,而不是包含一个元素,其值为 1 的数组。
2)数组直接量
数组直接量的语法格式:在中括号中包含多个值列表,值之间用逗号分隔。
下面代码使用数组直接量定义数组。
推荐使用数组直接量定义数组,因为数组直接量是定义数组最简便、最高效的方法。
3、Function 类型
函数(Function)是一段具有特定功能的代码块,函数并不会自动运行,需要通过函数名调用才能运行,如下例所示:
此外,函数还可以存储在变量、对象、数组中,而且函数还可以作为参数传递给其它函数,或则从其它函数返回,如下例所示:
【相关推荐:
javascript学习教程
】
var objectName = new functionName(args);var objectName = {
属性名1 : 属性值1,
属性名2 : 属性值2,
...
属性名n : 属性值n
};var person = {
name: 'Bob',
age: 20,
tags: ['js', 'web', 'mobile'],
city: 'Beijing',
hasCar: true,
zipcode: null
};
console.log(person.name); // 输出 Bob
console.log(person.age); // 输出 20var a = new Array(); //空数组var a = new Array(1, true, "string", [1,2], {x:1,y:2}); //实数组var a = new Array(5); //指定长度的数组var a = new Array(1);
console.log(a[0]);var a = []; //空数组
var a = [1, true, "0", [1,0], {x:1,y:0}]; //包含具体元素的数组function sayHello(name){
return "Hello, " + name;
}
var res = sayHello("Peter");
console.log(res); // 输出 Hello, Petervar fun = function(){
console.log("http://c.biancheng.net/js/");
}
function createGreeting(name){
return "Hello, " + name;
}
function displayGreeting(greetingFunction, userName){
return greetingFunction(userName);
}
var result = displayGreeting(createGreeting, "Peter");
console.log(result); // 输出 Hello, Peter