JavaScript笔记三两个
JavaScript定义变量:
var num;变量的类型不知道,当给num赋值后,根据值类型来确定类型。
1 var num = 3; //数值类型 2 3 var str = "hello,world"; //字符串类型 4 5 var tf = "true"; //布尔类型
运算符(+,-,*,/,%),单目运算符(++,--),逻辑运算符(且&&,或||),分支(if),循环(for) 跟java一样
JavaScript函数:使用关键字 function 定义 直接写参数名,无需数据类型或var关键字,return 可有可无,值任意。
1 /* 2 JavaScript 中的函数 3 */ 4 function add(a,b){ 5 var c = a + b; 6 return c; 7 } 8 9 /* 10 100-999之间的水仙花数 11 水仙花数 => a*a*a+b*b*b+c*c*c = abc 12 */ 13 14 function shuixianhuashu(){ 15 for(var i = 100; i < 1000; i++){ 16 if (isshuixianhua(i)) { 17 alert(i); 18 } 19 } 20 } 21 22 function isshuixianhua(num){ 23 var a = num%10; //获取个位数 24 var b = (num - a)/10%10; //获取十位数 25 var c = (num - a - b * 10)/100; //获取百味数 26 if ( a*a*a+b*b*b+c*c*c = num) { 27 return true; 28 } else { 29 return false; 30 } 31 } 32 33 //方法调用 34 shuixianhuashu();
JavaScript 字符串:可以用双引号,也可以用单引号。如果外围是双引号,内部可以用单引号来表示字符串。
1 //JavaScript 字符串 2 var str = "D:\\admin\\testfile\\java\\javascript\\admin.js"; 3 4 //字符串长度 5 var a1 = str.length; 6 7 //返回选定子字符串在字符串第一次出现的位置(下标位置) 8 var a2 = str.indexOf("java"); 9 var a3 = str.indexOf("a"); 10 //如果没有,返回-1 11 12 //从指定下标处开始查找 13 var a4 = str.indexOf("java", 4); // 从下标为4的地方开始查找 14 //查找第二个“java”字符的位置 15 var a5 = str.indexOf("java", str.indexOf("java")+1); 16 17 //返回字符串最后一次在字符串中出现的位置(下标) 18 var a6 = str.lastIndexOf("java"); 19 //从指点下标的位置向前查找 20 var a7 = str.lastIndexOf("java", 5); 21 22 //截取字符串 23 //从指定下标的位置一直截取到最后,包括指定下标的位置 24 var a8 = str.substr(3); 25 //从指定下标的位置截取指定长度的字符串 26 var a9 = str.substr(2,4); 27 28 //截取字符串的用法:获取文件的后缀名 29 var i = str.lastIndexOf("."); 30 var ext = str.substr(i); 31 32 //另一种,从指定下标位置(包括)截取到另一个指定下标的位置(不包括) 33 var a10 = str.substring(3, 5); 34 35 //获取某下标的字符 36 var a11 = str.charAt(3); 37 38 //字符串替换 把java 换成 javascript 39 var a12 = str.replace("java", "javascript"); 40 41 //字符串分割 42 var str = "a;b;c;d;e;f"; 43 var arr = str.split(";");//数值的元素是:a b c d e f 44 45 //字符串转成number 46 var s = "18"; 47 var num = parseInt(s); 48 49 //判断某个变量的值是不是数字 50 if (isNaN(num)){ 51 alert("不是数字"); 52 } else { 53 alert("数字"); 54 }
JavaScript 空,随机数,匿名函数,日期
/* 空 “”:表示空字符串 null:表示空对象 undefined:没有定义的对象,或者没有初始化的对象 */ //0-1之间的随机数 var num = Math.random(); //匿名对象 function add (a,b){ return a+b; } //等价于 var add2 = function(a,b){ return a+b; };//这里有分号 //调用 var num = add2(2,4); alert(num); //获取日期 var date =new Date(); var year = date.getFullYear();//年 var month = date.getMonth() + 1;//月 var day = date.getDate();//日 var hour = date.getHours();//时 var minute = date.getMinutes();//分 var second = date.getSeconds();//秒 var str = year + "-" + month + "-" + day + " " + hour + ":" + minute + ":" + second;
JavaScript 数组
1 //数组 2 var arr = new Array(); 3 arr[0] = "zhangsan"; 4 arr[3] = "lisisi"; 5 //数组元素:{"zhangsan" "undefined" "undefined" "lisisi"} 6 7 var arr = []; 8 arr[0] = "zhangsan"; 9 //数组的长度是arr.length-1 10 arr[arr.length] = "lisi";//在数组最后一个元素后面再加一个元素 11 12 //定义的同时初始化 13 var arr = ["一","二","三","四","五"]; 14 arr[arr.length] = "六"; 15 arr[arr.length] = "日"; 16 17 //循环数组 18 for (var i=0;i<arr.length;i++){ 19 alert(arr[i]); 20 } 21 22 //将数组元素按参数字符连接成字符串 23 var s = arr.join("--");
JavaScript中的对象
//对象定义第一种 var obj = new Object(); obj.name = "zhangsan"; obj.age = 18; obj.sex = "男"; obj.run = function(){ alert("正在跑步"); }; //对象访问 alert(obj.name); alert(obj.age); obj.run(); //对象定义第二种 var obj = { name:"lisisi", age:18, sex:"女", run:function(){ alert("正在跑步"); }, eat:function(food){ alert("正在吃"+food); } }; //对象访问 alert(obj.name); obj.run(); obj.eat("米饭");
JSON格式的字符串及其转换
//JSON格式的字符串 var str = "{name:'zhangsan',age:18,friends:[{name:'lisi',age:12},{name:'wangwu',age:22}]}"; //将JSON转化成对象 var obj = eval("("+str+")"); //想要访问王五的姓名 alert(obj.friends[1].name); //JSON格式的字符串 var str = "[{name:'zhangsan',age:18},{name:'lisi',age:12},{name:'wangwu',age:22}]"; //将JSON转化成数组 var arr = eval("("+str+")"); //遍历数组 for(var i=0;i<arr.length;i++){ alert(arr[i].name+"--"+arr[i].age); }