JavaScript基本数据类型,函数对象,表,数组,字符串,函数调用

  直接上代码了,

  1 cc.Class({
  2     extends: cc.Component,
  3 
  4     properties: {
  5 
  6     },
  7 //JS基本数据_函数对象_表_数组_字符串_函数调用
  8     onLoad:function () {
  9         //基本数据类型
 10         //1整数 2 小数 3 逻辑变量真/假  cc.log();进行打印
 11         console.log(1);
 12         console.log(2.0);
 13         console.log(true);
 14 
 15         /*1: var 定义一个变量,分配内存,但是内存只够存基本数据类型和引用;
 16         2: = 给变量赋值;
 17         3: var 定义在哪里,这个变量的作用范围在哪里;
 18         4: var 变量在运行的时候存的是什么就是什么;
 19         5: console.log(变量); 打印一个变量;
 20         6: 如果一个变量没有定义或没有赋值,undefine
 21         7: 如果一个变量不保存任何数据,初始化为null;
 22 */
 23         //使用一个没有初始化的变量,结果为undefine
 24         //console.log(a);
 25         var  b=null;//未存放任何数据
 26         console.log(b);
 27         /* 数组:按照一定的顺序存放的一组元素
 28         *[]定义了一个数组对象
 29         *索引从0开始,使用数组名字[索引]来访问;
 30         * 数组里面的每个元素可以存放任何类型的数据(只要是合法的js数据类型);
 31         * */
 32         var c=[];
 33         //console.log(c);//为一个空数组
 34         var d=[1,2,3,4];
 35         console.log(d[0]+":"+d[3]);
 36         //console.log(d);//打印出 1,2,3,4 数组
 37         var e=[1,2.1,true,[0,1,2]];
 38         /*数据类型:表 又称字典
 39         *{} 表示定义一个表  key -->value
 40         *1: 定义一个表 {key: value, key2: value, ....}
 41         * 2:key可以是整数,字符串;
 42         * 3: value可以是任意类型;
 43         * 4:访问value的每个元素 表[key], 表.key;
 44         *
 45         * */
 46         var list_table={};
 47         list_table={
 48             0:true,
 49             hello:4,
 50         };
 51         //console.log(list_table);//Object Object
 52         //访问已经存在的键值
 53         console.log(list_table.hello);//4
 54         console.log(list_table["hello"]);//4
 55         console.log(list_table["0"]);//true
 56         //访问一个不存在的key 结果为undefine
 57         console.log(list_table.aaa);//undefine
 58         ////////////////////////////添加key
 59         list_table.aaa=[0,3,4];//在表内添加
 60         console.log(list_table.aaa);
 61         ////////////////////////////添加key
 62         list_table["sss"]=18;
 63         console.log(list_table.sss);
 64         //函数对象
 65         /*  1 :function(参数1, ...) {}
 66             2: return; 返回语句;
 67             3: 函数调用,与代码跳转
 68             */
 69         //定义一个变量,指向一个函数对象
 70         var  call_func=function (param1,param2) {
 71             console.log("nammmddddd",param1,param2);
 72         };
 73         //函数的变量或者名称,传递参数
 74         //注:函数定义的时候不会调用,只有调用的时候会发生跳转
 75         console.log("begin");
 76         call_func(3,4);
 77         console.log("end");
 78         //函数可有返回值,可无
 79         //无返回值
 80         var  call_func1=function (param1,param2) {
 81             return ;
 82         };
 83         //有返回值
 84         var  call_func2=function (param1,param2) {
 85              return (param1+param2) ;
 86         };
 87         //此时可定义对应变量接返回值
 88         //函数名称指的是该函数对象,该函数名称在整个JS文件中都有效
 89         //变量可保存函数对象
 90         var res=call_func2(6,10);
 91         console.log(res);
 92         //字符串数据对象
 93         var str="ddddddd";
 94         var srt1='dddddd';
 95         //总结:复杂数据和基本数据
 96         /*1:整数,小数,逻辑值为基本数据类型(简单的数据对象)--》=传递的是值;
 97         2: 表,数组,字符串对象,函数对象 为复杂数据类型--》=传递的是引用,变量‘指向’哪个对象;
 98         3: 基本数据类型传递的是值;
 99         4:复杂数据类型传递的是引用;
100 */
101         //若变量存放的是基本类型,因为变量本身的内存就可以存下基本数据类型
102         var v=3;//将v的内存赋值为3
103         var f=v;//将f段内存赋值为3,传递的是值
104         f=4;//将f段内存赋值为4,未改变V内存块的内容
105         console.log(v);//3
106 
107         //复杂数据对象,我们将变量里存放的是引用,引用是可以直接存放到变量所对应的内存里的
108         //var 一个对象是需要占有内存的
109         var b=[1,2,3];//将数组的访问快捷方式,“引用”赋值给变量b 的内存
110         c=b;//传递的不是值,而是引用(对象的地址,对象的快捷方式)
111         c[0]=0;
112         console.log(b);//[1,2,3]?[0,2,3]   result:0,2,3
113 
114 //System是一个变量 指向了一个表对象,表对象内有两个元素key value
115         var System= {
116             test_name: function () {
117 
118             },
119             test_fun: function () {
120 
121             },
122             //可存放变量
123             age:1,
124             sex:-1,
125             name:"dbueuebf",
126         };
127         //表.key-->value 访问函数对象
128         System.test_fun();
129         console.log(System.name);
130 
131         var Cmd=[
132             function () {
133                 console.log("try test");
134             },
135         ];
136         Cmd[0]();//调用
137         //传递的是一个表   暂error
138         this.test_class({
139             width:100,
140             height:100,
141             xpos:0,
142             ypos:0,
143         });
144         //除定义函数外,其他所有最好加分号  例子
145         var my_funcs=function () {   };
146         function  test() {  }
147         //若定义两个重名的函数,是很多错误的根源
148         //函数之类的是先定义后使用
149         //所以当函数重名的时候,后装载的函数会冲掉之前定义的函数
150         this.aaa();//test _1
151     },
152     aaa:function () {
153         console.log("test _0");
154     },
155     aaa:function () {
156         console.log("test _1");
157     },
158     start:function() {
159 
160     },
161     //参数是什么,取决于函数向该函数内传递的参数
162     test_class:function (param) {
163         console.log(param);
164     },
165     update:function (dt) {
166 
167     },
168 });

猜你喜欢

转载自www.cnblogs.com/allyh/p/9974867.html