<body>
<script>
// 语句结束用封号
// 一切(变量、函数和操作符)都是区分大小写的
// 标识符(变量、函数、属性的名字,函数的参数):字母、数字、下划线、美元符号,不能以数字开头,不能使用关键字、保留字等作为标识符。
//声明
var name_01;
//赋值
name_01="marry";
//声明和赋值同时
var age=18;
//一次声明多个变量
var name_01="lisa",age02=20;
//省略var声明的变量是全局变量,但是不推荐省略var
console.log(name_01); //在控制台中打印
//typeof 检测变量类型 2种语法
console.log(typeof name_01);
console.log(typeof(age));
//声明了变量没有赋值,他的类型就是undefined
//null值表示空指针对象。如果定义的变量准备在将来用于保存对象,那么最好将
//改变量初始化为null而不是其他值
//undefined值是从null里派生出来的,所以undefined==null的返回结果是true
console.log(age-"abc");
/*NaN:not a number,是一个特殊的数值。
1.任何涉及NaN的操作都会返回NaN
2.NaN与任何值都不相等,包括NaN本身
3.NaN的类型是number
isNaN(n) 检测n是否是"非数值" 返回值boolen类型
isNaN()对接收的数值先尝试转换为数值,再检测是否为非数值 */
/*非数值转换为数值
Number() id=Number(id);//字符串啥的转不了 会返回NaN
parseInt() parseFloat() 转换数值优先使用这两个
var topval=parseInt("28px");//要是数字开头 不然是NaN
parseInt("0xf",16)//转换为16进制数 */
/*String
1.要放在''或者""里
2.转换为字符串 toString ()和String()
知道类型用toString() 不知道的用强制转换String()
var ids=78934;
var idsstr=ids.toString(); */
/*在运算过程中会进行隐式类型转换
a+=5 ==== a=a+5
===:全等,比较值的同时比较数据类型是否相等
==:相等,只比较值是否相等
!=不相等 !==不全等
三元操作符
条件?执行代码1:执行代码2
例:var result=(soce>60)?"及格":"不及格";
*/
// &&与 所有条件都true才true 不是数字的话 第一个隐式类型转换是true就返回最后一个的值 是false就返回第一个的值
//有一个是null、NaN、undefined就返回null、NaN、undefined
// ||或 只要有一个条件成立就返回true 不是数字的话 第一个条件成立就打印第一个 都不成立才会返回null、NaN、undefined
// !非 返回的都是boolen
</script>
</body>