Undedined 表示未定义值
Var a;//声明一个变量,但是没有对其赋值
alert(a);//但是它仍然有值的,是undefined
alert(b);//像这样的 一个没有定义的变量将会出现错误,而不是输出undefined
对于直接 alert("12" + 23);//1223 有字符串的出现 会自动调用它的toString方法 字符串的拼接操作
逻辑运算符
// &&逻辑与,当两边的值都为true时返回true,否则返回false // || 逻辑或,当两边值都为false时返回false,否则返回true // ! 逻辑非 alert(true && false);//输出false alert(true && true);//输出true alert(true || false);//输出true alert(false || false);//输出false alert(!true);//输出false类型转换入门
由于JavaScript是弱类型语言,所以我们完全可以将字符串和数字(两个不同类型的变量)进行相加,这个我们在前面已经演示过了.当然,不仅仅可以将字符串和数字相加,还可以将字符串与数字相乘而不会出现脚本错误!
var str ="some string here!"; var num = 123; alert(str*num);//将输出NaN,因为乘法运算符只能针对数字,所以进行运算时计算机会将字段串转换成数字 //而这里的字符串转换成数字将会是NaN //NaN是一个特殊的值,含义是"Not A Number"-不是一个数字,当将其它值转换成数字失败时会得到这个值 str ="2"; alert(str*num);//将输出246,因为str可以解析成数字2其它类型转换
var bool = true; alert(bool*1);//输出1 ,布尔值true转换成数字为1,事实上将其它值转换在数字最简单的方法就是将其乘以1 bool = false; alert(bool*1);//输出0 alert(bool+"");//输出"flase",将其它类型转换成字符串的最简单的方法就是将其写一个空字符串相连 alert(123+"");//数字总能转换成字符串 var str = "some string"; alert(!!str);//true,因为非运算符是针对布尔值进行运算的,所以将其它类型转换成布尔值只须将其连续非两次 str =""; alert(!!str);//输出false,只有空字符串转换成布尔值时会是false,非空字符串转换成布尔值都会返回true var num =0; alert(!!num);//false num=-123.345; alert(!!num);//true,除0以外的任何数字转换成布尔值都会是true //还有一个非常重要的是,空字符串转换成数字将会是0 alert(""*1);//输出0使用window.prompt可以弹出包含输入框的窗口,用户输入的内容将是此函数的返回值
var msg = window.prompt("请输入一个数字","默认值");//prompt方法包含一个必须参数和一个可选参数。 //第一个参数是必须的,将在窗口中显示的文字,第二个参数是可选的,为文本框的预设值 alert(msg);//将输出我们输入进去的东西请用户输入年龄,我们计算出他活了多少秒(貌似无聊的很啊)
var age=window.prompt("请输入您的年龄!","18"); var liveSeconds=age*365*24*3600; alert("您已经度过了"+liveSeconds+"秒!")//javascript中0为false,非0为true
alert(1&&2);
//输出2,输出最后比较的那个值
alert(!!1);
//两个非(!!)是将数字,字符串等类型转换为Boolean型的方法
alert(1||0);
//因为使用的是快速与,所以只要第一个条件满足就不再进行比较了,输出1.
alert(!!(1||0));
//转成Boolean值.
alert(
true
*1);
alert(
false
*0);
alert(
""
*1);
//空字符串转换成数字会是0;
</script>