(一)数据类型
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循环