js的三种输出方式:
1,alert(“user”); 弹出一个弹窗显示
2, document.write(“user”); 在文档页面中显示
3, console.log(“user”); 在控制台console中显示
注意:alert的优先级比document.write高,所以即使后写alert,也会先执行alert的代码
var username = "leson";
alert(username);
var 是关键字 用来声明一个变量
username 叫变量名称
=不是比较 是赋值
代码的执行顺序为从上到下,单行时从左到右
字符串有三种声明方式如下:
var username = "leson";
alert(username);
username = 'lili';
alert(username);
username = `lulu`;
alert(username)
三种常见的数据类型如下:
1字符串
2:数字,直接写,不要加引号
3:布尔值,是非(true false)
var username = "leson";
alert(username);
var userage = 18;
alert(userage);
var isBoy = false;
alert(isBoy);
数据类型的检测typeof
var username = "leson";
alert(typeof username);
var userage = 18;
alert(typeof userage);
var isBoy = false;
alert(typeof isBoy);
特殊的+号
1,+左右两边只要存在字符串类型的变量,就进行字符串的拼接
2,+左右两边全部都是是number类型的变量时,才进行运算
var num1 = "10";
var num2 = 100;
var result = num1 + num2;
alert(result);//10100
var username = "leson";
var userage = 30;
var result = "我叫"+username+"今年"+userage+"岁"; //我叫lili今年20岁;
alert(result);
变量的命名规则
1,见名知意
2,字母数字_$组成,不能以数字开头,更不能是关键字
3,写法上驼峰命名法(匈牙利命名法),例getElementById
多变量声明的两种方式
1,var username="leson",userage=18;
2,var num1 = num2 = 100;
数据类型的转换
字符串转为数值型:
var user="hahahahahha";
document.write("user的数据类型为"+typeof user+"
");
var user1=Number( user);
document.write("user1值为"+user1+",user1的数据类型为"+typeof user1+"
");
var user2=Number("");
document.write("user2值为"+user2+",user2的数据类型为"+typeof user2+"
");
结果为:
user的数据类型为string
user1值为NaN,user1的数据类型为number
user2值为0,user2的数据类型为number
字符串转为布尔类型:
var user3=Boolean( user);
document.write("user3值为"+user3+",user3的数据类型为"+typeof user3+"
");
var user4=Boolean("");
document.write("user4值为"+user4+",user4的数据类型为"+typeof user4+"
");
var user5=Boolean(" ");
document.write("user5值为"+user5+",user5的数据类型为"+typeof user5+"
");
结果为:
user3值为true,user3的数据类型为boolean
user4值为false,user4的数据类型为boolean
user5值为true,user5的数据类型为boolean
综上:
1,字母转数字:结果为NaN 引号里面都是数字则转化为对应数值 "“和” “比较特殊的转成数字结果为0
2,字母转布尔:只要有内容结果就为true,没有就为false,”"为无内容, " "为有内容
数值类型转换成字符串类型:
var num1=-111;
document.write("num1的数据类型为"+typeof num1+"
");
var num2=String(num1);
document.write("num2值为"+num2+",num2的数据类型为"+typeof num2+"
");
结果:
num1的数据类型为number
num2值为-111,num2的数据类型为string
数值类型转换成布尔类型:
var num3=Boolean(num1);
document.write("num3值为"+num3+",num3的数据类型为"+typeof num3+"
");
结果:
num3值为true,num3的数据类型为boolean
综上:
1,数值类型转换成字符串类型时直接将数字变成字符串类型即可
2,数值类型转换成布尔类型时=0为false,其他为true
布尔类型转换成字符串类型:
var aa=false;
document.write("aa的数据类型为"+typeof aa+"
");
var bb=String(aa);
document.write("bb值为"+bb+",num2的数据类型为"+typeof bb+"
");
结果:
aa的数据类型为boolean
bb值为false,num2的数据类型为string
布尔类型转换成数值类型:
var cc=Number(aa);
document.write("cc值为"+cc+",num3的数据类型为"+typeof cc+"
");
结果:
cc值为0,num3的数据类型为number
综上:
1,布尔类型转换成字符串,直接将true或false转换成字符串
2,布尔类型转换成数值,false 为0 true 为1
特殊的符号转换:parseInt,paeseFloat
parseInt把里面的内容从左到右的进行转换 遇到非数字的时候终止 并且将结果保留整数部分(向下取整) 开头就为非数字 结果就为NaN
paeseFloat跟parseInt类似 只是结果保留了小数位,具体的保留几位小数请用toFixed(针对数字类型的)
var numa1="120.001px";
document.write("numa1为"+numa1+"
");
var numa2= parseInt(numa1);
document.write("numa2为"+numa2+"
");
var numa3=parseFloat(numa1);
document.write("numa3为"+numa3+"
");
var numb1="12a.001px";
document.write("numb1为"+numb1+"
");
var numb2= parseInt(numb1);
document.write("numb2为"+numb2+"
");
var numb3=parseFloat(numb1);
document.write("numb3为"+numb3+"
");
var numc1="a120.001px";
document.write("numc1为"+numc1+"
");
var numc2= parseInt(numc1);
document.write("numc2为"+numc2+"
");
var numc3=parseFloat(numc1);
document.write("numc3为"+numc3+"
");
结果:
numa1为120.001px
numa2为120
numa3为120.001
numb1为12a.001px
numb2为12
numb3为12
numc1为a120.001px
numc2为NaN
numc3为NaN