标签:
今天学习了js数据类型的function,Object,Array
1.function是object的一种,也是一种数据类型--可以存储在变量、数组、对象中,也可以作为参数传递到方法中去,这是一个比较新的概念,也是与java,c#中的函数概念不一样的地方(以前只知道js中的function可以执行某个功能,接受参数、返回某个值,原来还可以当成数据值来传递,和number,string类型没两样!)
function的两种定义方式:
1 //1 2 function test(msg) { 3 alert(msg); 4 } 5 6 //2.function literal 7 var showMsg = function(msg) { 8 alert(msg); 9 }
2.object
①定义方式类似function的两种(function也是object)
1 //1.define a object with Object construct. 2 var o1 = new Object(); 3 o1.name = ‘new obj‘; 4 o1.txt = ‘any‘; 5 6 //2.with object literals 7 var o2 = { x: 2.2, y: ‘hello‘, z: { name: ‘o2‘, other: ‘nothing‘ } }; 8 9 //access object‘s property... 10 alert(o1.name); 11 alert(o2.z.name);
②object的类型转换:
在bool的使用场景下:non-null object返回true;否则false
在string场景下:调用其toString()方法
在number场景下:先调用其valueOf()方法(大部分情况返回自己),之后调用.toString(),在转化成number
③.object访问属性的别样方式:关联数组
如代码示例的两个obj,可以通过数组的方式访问其属性:o1["name"],o2["x"]
3.Array
array也是object的一种,不过object通过属性名称去访问每个值,而array通过下标(index)访问
定义方式:
1 //1. 2 var array = new Array(10); 3 array[0] = ‘hello‘; 4 array[1] = 22; 5 array[2] = true; 6 //2. 7 var a2 = [11, ‘hello‘, true, { name: ‘zhangsan‘, age: 21 }]; 8 //3. 9 var a3 = [1, , , ‘yes‘]// with 2 undefined elements. 10 var a4 = new Array(10);//with 10 undefined elements. 11 12 alert(array[0]); 13 alert(a2[3].name); 14 alert(a3[2]);//undefined 15 alert(a4[2]);//undefined
今天只是简单了解下function,object,array的概念,由于在js中它们很重要很常用,后续章节会有详细介绍,后期带来详细总结,今天到这
标签:
原文地址:http://www.cnblogs.com/baweier2013/p/5071517.html