1、什么是js
基于对象和事件驱动并且具有相对安全性的客户端脚本语言,由网景公司开发。
2、js数据类型
1、基本数据类型
undefined,null,number,boolean,string,
3、可以转换成false的值
0,空字符串,null,false,undefined
4、可以转换成true的值
非空字符串,true,非0数字,obj
5、显示转换和隐士转换
显示转换:Boolean Number String
隐式转换:
1、当一个字符串和一个数字进行+运算时,数值转换成字符串
2、除了+运算,其余算术运算是将字符串转换成数值
3、字符串之间的比较,逐位比较个字符的ASCII码值
4、字符串和数值进行比较时,字符串转换成数值
6、NaN
NAN不与任何数值进行转换,都转换为false
不和任何值相等
7、逻辑运算的一些特殊用法
var a = 0||5;
console.log(a)//打印值为5,当或运算时,第一个隐式转换为布尔值为false时,输出结果为第二个数
var b = 5||0;
console.log(b);//打印值为5,当或运算时,第一个隐士转换为布尔值为true时,输出结果为第一个数
8、自增自减
1、a++:先使用后自加
2、++a:先自加后使用
9、进制转换
八进制:0为标志例:072
十六进制:0x做标志:0x23
总结1:
所有的类型的数据都可以用var来定义
typeof用于检测某个变量的类型
布尔值只有两个值
undefined类型只有一个值,undefined,主要是用来区分一个变量是未定义还是定义之后未赋值,转换为数值是表示NaN
null:一个空对象的指针,只不过这个对象暂时不存在,转换为数值是表示0
总结2:
"",0, null,undefined, NaN, false 会自动转换为false。其它的都会转换为真:
空数组、对象、函数定义都会自动转换为真。
*,/,-只用于数字运算,当这些操作符和字符串一起使用,那么字符串会被强制转换为数字。