var a; // js中用var关键字声明一个变量
a=111;
var b="tqs" ;
console.log(a); //在控制台输出
console.log(typeof a); //typeof 检查变量类型
console.log(typeof b); //typeof 检查变量类型
/*
标识符:可含有字母数字_$,不能以数字开头
数据类型:JS中有六种
String 字符串
Number 数值
Boolean 布尔值
Null 空值
Undefined 未定义
Object 对象
*/
/*
\' 表示 ' \" 表示 " \\表示 \ \n 换行 \t 制表符
infinity表示正无穷,-infinity表示f负无穷 ,NaN表示 not a number
使用typeof检查infinity,NaN也会返回number
*/
//强制类型转换 转为string
var a1=123;
var b1=a.toString();
//方法一:调用被转换类型的toString()方法(不影响原变量,会给出返回值)
var a2=234;
var b2=String(a2);
console.log(typeof b2);
//方法二:调用String函数,将a转化为字符串;
//强制类型转换 转为number (若字符串有非数字或者未定义则转为NaN)
var a3='22';
a3=Number(a3);
console.log(typeof a3);
//方法一:调用Number函数
var a4='221.1px';
a41=parseInt(a4); //parseInt可将字符串中有效的整数取出;
a42=parseFloat(a4); //parseInt可将字符串中有效的整数和小数取出;
console.log(a41,a42);
//方法二:parseInt()将一个字符串转换为整数;parseFloat()将一个字符串转换为浮点数
/*
在js中,表示16进制数字要以0x开头,8进制要以0开头,2进制要以0b开头(有的浏览器不支持)
可以在parseInt()中传递第二个参数来指定进制
*/
var a51=0xff,a52=070,a53=0b10;
console.log(a51,a52,a53);
var a54="070";
a54=parseInt(a54,8);//将其视为8进制转换
console.log(a54);
//强制转换为boolean值时,
//数字除了0和NaN,字符串除了空串,其余均为true; null和undefined为false;
var aa1="lbw",bb1="666";
var result=aa1+bb1;//任何值和字符串相加都会先转换为字符串,再拼串;
console.log(result);
//减法,乘法,除法则是转换为数字再运算;(可利用这一特点做隐式转换为Number)
//&& 与运算:若两值均为true或均为false,则返回后面的; 一个 false,一个true,返回flase
var r1=NaN||0;
console.log(r1);
// || 或运算:若第一个值为true,直接返回第一个值;若第一个值为false,返回第二个值.
//比较两个字符串时,比较其ASC2码,且是一位一位进行比较,若两位一样,则比较下一位(可用来英文排序
console.log("15"< +"5");//注意:比较两个字符串型的数字时,一定要转型!
console.log('\u2620');// unicode编码
// === 全等; !== 不全等
// 条件表达式(三元运算符) 条件表达式?语句1:语句2;