11.8总结
javascript基础语法(上)
变量和数据类型
变量定义
JavaScript 是弱类型脚本语言,使用变量之前,可以无需定义,当使用某个变量的时候直接使用即可。主要分为以下两种定义方式:
v 隐式定义:直接给变量赋值
v 显示定义:使用var关键字定义变量
<script type="text/javascript"> temp="welcome,Javascript";//使用隐式定义 alert(temp); </script> |
<script type="text/javascript"> var temp;//显示声明 temp=12;//赋值后的temp数据类型是整形 alert(temp); </script> |
<script type="text/javascript"> var a,b,c;//可以一次性定义多个变量 var l,j="abc",k=0;//定义变量时可以变量指定初始值 </script> |
变量的名称需要遵循以下规则
v 首字母必须是字母(大小写均可)、下划线(_)、或者美元符号($)
v 余下的字母可以是下划线、美元符号、任意字母或者是数字字符
v 变量名不能使关键字
字母、数字、下划线、$符都可以,其中不能以数字开头,不能是关键字
练习:查看以下变量的声明是否合法 var test;√ var _chen;√ var chen_he$shanghai;√ var 4chen;× var blog%name;× var true;× |
强调:变量名称对大小写敏感(y和Y是不同的变量)
JavaScript基本数据类型
JavaScript基本数据类型,JavaScript是弱类型脚本语言,使用时无需指声明变量定变量的数据类型。JavaScript是解释时动态决定的,数据保存在内存中时也有数据类型的。
JavaScript常用数据类型如下:
- 数值类型(number):包含整数和浮点数;
- 字符串类型(String):字符串必须用双引号或单引号括起来;
- 布尔类型(boolean):只有true或false两个值;
- 未定义类型(Undefined):专门用来确定一个已经创建但是没有初值的变量;
<script type="text/javascript"> var a; alert(a); </script> |
弹出:Undefined
- 空类型(Null):用于表明某个变量的值为空(表明变量已经被赋值,但赋的值为空);
- 对象类型(Object):数组、日期对象等
练习1:数值类型
<script> var a=10; var b=10.2; alert(a+"\n"+b); </script> |
练习2:比较两个字符串的值是否相等
<script> var num1="abc"; var num2='bcd'; alert(num1==num2); //结果为false </script> |
练习3:
<script> var a; alert(a);//结果为undefined alert(String.abc);//结果为undefined </script> |
练习4:
<script> var a; var b=null; alert(a==b);//结果为true //"==="为严格等于 alert(a===b);//结果为false </script> |
JavaScript 数据类型间的转换
JavaScript和其他编程语言一样有进行类型转换的能力
- 通过“+”号或toString()方法将数值转换成字符串。
- 通过parseInt()将字符串转换成整型。
- 通过parseFloat()将字符串转换成浮点型。
<script> var a=3; var b=10; var c=a.toString();//将3转换为字符串"3" var d=b+c; alert(d);//结果为103 </script> |
<script> document.write(parseInt('67red')+"<br>"); document.write(parseInt('53.5')+"<br>"); document.write(parseInt('wohenmei')+"<br>");//输出NaN(Not a Number) </script> |
<script> document.write(parseFloat('35wu')+"<br>"); document.write(parseFloat('435.34')+"<br>"); document.write(parseFloat('435.34.564')+"<br>"); document.write(parseFloat('wohenmei')+"<br>");//输出NaN(Not a Number) </script> |
JavaScript中字符串的常用操作方法
charAt() |
获取字符串特定索引处的字符 |
toUpperCase() |
将字符串的所有字符转换成大写字母 |
indexOf() |
返回字符串中特定字符串第一次出现的位置 |
substring() |
返回字符串的某个子串 |
slice() |
返回字符串的某个子串,支持负数参数,功能更强大 |
concat() |
用于将多个字符串拼加成一个字符串 |
replace() |
将字符串中的某个子串以特定的字符串替换 |
split() |
将某个字符串分割成多个字符串,可以指定分隔符 |
match() |
使用正则表达式搜索目标子字符串 |
search() |
使用正则表达式搜索目标子字符串 |
练习1:
<script> var a="3.5"; var b=a-2; alert(b); </script> |
练习2:
<script> var a="3.5"; var b=a-2;//结果为1.5 var c=a*2;//结果为7 var d=a+2;//结果为3.52 alert(b+"\n"+c+"\n"+d); //让结果怎么不变为3.52呢? alert(parseFloat(a)+2);//结果为5.5 </script> |
练习3:
<script> var str="I love java!"; alert(str.length);//获取字符串的长度 alert(str.charAt(5));//获取字符串中第五位的字符 alert(str.toUpperCase());//将所有字符串转换成大写字母 alert(str.indexOf('a'));//获取第一个'a'出现的下标 alert(str.lastIndexOf('a'));//获取最后一个'a'出现的下标 alert(str.indexOf('a',8));//获取从第八位开始第一次出现'a'的下标 alert(str.substring(2));//获取从第二位开始截取到最后的字符串 alert(str.substring(2,4));//获取从第二位开始截取到第四位的字符串 alert(str.slice(2));//获取从第二位开始截取到最后的字符串 alert(str.slice(2,4));//获取从第二位开始截取到第四位的字符串 alert(str.slice(3,-1));//获取从第三位开始截取到减去最后一位的字符串 alert(str.slice(-3,-1));//获取从倒数第三位到倒数第一位的字符串 alert(str.replace('o','w'));//将字符串中的'o'全部换为'w' //将字符串使用空格来进行分割 var arr=str.split(' '); for(i=0;i<arr.length;i++){ alert(arr[i]); } alert(str.match("v"));//搜索此字符串中含有’v’的字符串 alert(str.search("love"));//获取'love'在字符串中的索引位置 </script> |
注意:JavaScript中的字符串与Java中字符串的区别:
1.JavaScript中的字符串可以用单引号括起来 ‘a’ “abc”
2.JavaScript中比较两个字符串的字符序列是否相等使用==即可,无需使用equals()方法