(一)数据类型 JavaScript中只有对象类型 常见的对象类型 1. 数值类型 number 2. 字符串类型 string 3. 布尔值类型 boolean 4. 未定义类型 undefined 5. 自定义对象类型 object (二)变量声明和赋值 var x =1; var name ="rose"; var b = true/false; var person = new Person(); (三)类型介绍 1. 数值类型 js中底层全都是浮点数,在使用过程中会自动转换整数或小数 int x = 3; int y = 1; int z = x/y; z=4 var x = 3; var y = 1; var z = x/y; z=5.5; var x = 7; var y = 1; var z = x/y; z=8; NaN: Not a Number 不是一个数 ,当需要判断变量是否为数值时使用,isNaN(x) 返回值为true/false 2. 字符串类型 通过单引号或双引号修饰字符串 var s1 = "aaa"; var s1 = 'aaa'; 3. 布尔值类型 var b1 = true; var b2 = false; 4. 未定义类型 当变量只声明没有赋值的时候 该变量的类型是未定义类型 (四)各种类型间的隐式转换 1. 数值类型 转字符串: 直接转 var s = "abc"+18 s="abc18" 转布尔值: 0和NaN转false 其它true 2. 布尔值类型 转字符串: 直接转 var s ="abc"+true s="abctrue"; 转数值: true->1 false->0 3. 字符串 转数值: 能转直接转 不能转转成NaN var s = "18"-5; 任何数值和NaN进行任何运算结果都是NaN 转布尔值: 空字符串转false其它都是true if("asfd") 4. 未定义undefined 转字符串:直接转 var s = "abc"+undefined s = "abcundefined"; 转布尔值: false 转数值: NaN 5. null 转字符串:直接转 转布尔值: false 转数值: 0 (五)运算符 + - * / % = == > < >= <= != 和Java中的运算符大体相同 ==和===,==先统一两个变量的类型再比较值,===先比较类型,如果类型相同再比较值 typeof: 获取变量的类型 typeof 66 + 6 "number6" 除法运算会自动转换整数和小数 5/2=2.5 6/2 = 3 (六)语句 if else while do while for switch case - 和Java大体相同 - 不同点: 1. if和while后面小括号里面的内容 如果不是布尔值会隐式转换成布尔值 2. for循环把int i改成var i 不支持增强for循环