<script src="JSLogger.js" debug="true"></script> <script> var g = "outter"; (function test(bool1,keyword1){ var n = 12.12345;//数字类型参数 /* var n2 = "12.3456";// JSLogger.log(n2.toFixed);//undefiend //将String类型转变成Number 使用-0的方法 JSLogger.log((n2-0).toFixed);//function natavie code JSLogger.log(n.length);//undefined //将Number类型编程String使用+""的方法; JSLogger.log((n+"").length);//8 JSLogger.log(n.toString(2));//转成二进制 n.toString(8); n.toString(16); JSLogger.log(n.toFixed(0));//去掉小数点后边的 JSLogger.log(n.toFixed(2))//保留2位小数 JSLogger.log(("12"*"2.2"));//26.400000000000002 JSLogger.log(("12"*"2.2").toFixed(1));//正解 26.4 JSLogger.log(parseInt("12.3a啊123"));//12 JSLogger.log(parseInt("a12.3a啊123"));//NaN JSLogger.log(parseFloat("12.3a啊123"));//12.3 JSLogger.log(parseFloat("a12.3a啊123"));//NaN JSLogger.log(parseInt("1001",2));//9 将1001按照二进制转成Int类型 //将非Boolean类型数据转成Boolean的方法:!!value JSLogger.log(!!"true"===true);//true 除了空以外的字符串都认为是真 JSLogger.log(!!""===true);//false 空字符传被认为假 JSLogger.log(!!null===true);//false null为假 JSLogger.log(!!0===true);//false 数字类型只有0为假 JSLogger.log(!!-1===true);//true 即使负数转成boolean也是真 JSLogger.log(!!undefined===true);//false undefined 为假 var g ="inner";//私有变量 和全局变量重名 g += " +add"; //改变g变量,如果g是私有变量那么只改变私有变量 不改变全局变量 //打印私有变量 JSLogger.log(g);//inner +add var a = ["1","2"]; var b = a;// 指针引用??? a=["A","B","C"]; JSLogger.log("b = "+b.join(",")+",a = "+a.join(","));//b = 1,2,a = A,B,C ??为什么是这个结果呢??? //循环标签的应用 outterFor: for(var i=0;i<5;i++){ innerFor: for(var j=0;j<5;j++){ if(j>i){break innerFor;} JSLogger.log("i = "+i+",j = "+j); if(j==3 && i==3){ JSLogger.log("outterFor停止循环"); break outterFor; } } } var obj = {Name:'tom'}; var p1 = "Name"; var p2 ="Age"; //查看obj是否有Name属性 JSLogger.log("p1 in = "+p1 in obj);// true JSLogger.log("p2 in = "+p2 in obj);// false JSLogger.log("p1 hasOwnProperty = "+obj.hasOwnProperty(p1));//true JSLogger.log(!!obj[p1]);// true JSLogger.log(!!obj[p2]);// false //删除某个属性(仅适用于删除某个对象的属性 不能删除JS对象本身) obj[p1]= null;//使用置空的方法,其实并没有删除属性p1,只不过是属性p1没有值了而已 JSLogger.log(obj[p1]);// null JSLogger.log(p1 in obj);// true JSLogger.log("p1 hasOwnProperty = "+obj.hasOwnProperty(p1));//true delete obj[p1];//真正的删除了p1属性 JSLogger.log(obj[p1]);// undefined JSLogger.log(p1 in obj);// false JSLogger.log("p1 hasOwnProperty = "+obj.hasOwnProperty(p1));//false //delete obj;//其实没有任何作用 */ var arr =[{Name:'爸爸',Age:44,son:{Name:'Tom',Age:'9'}},{Name:'爷爷',Age:99},{Name:'宝宝',Age:11}]; JSLogger.log(arr.sort(function(a,b){return a.Age-b.Age;}).reverse(),true);//爷爷 爸爸 宝宝 var arr2 = [1,2,3]; arr2 = arr2.concat(3,4);//3会被重复添加 arr2 = arr2.concat([5,6]); //JSLogger.log(arr2.slice(2,5));//3 3 4 (截取下标为2到5的,如果不写5则到末尾) //throw new Error("错啦"); })(); //打印全局变量 JSLogger.log(g);//outter </script>