1. 程式人生 > >JavaScript基本資料型別,函式物件,表,陣列,字串,函式呼叫

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 });