1
1.1、ECMAScript;解释器(翻译)
几乎没有兼容性问题
1.2、DOM (doucument object model)
html的入口
有一些不兼容
1.3、BOM (browser object model )浏览器
没有兼容问题(完全不兼容)
2、变量类型 typeof
var a=2;数字number
var a='sagowi'字符串string
var a=true布尔值boolean
a =function(){}
alert (typeof a) 函数function
a= document object
alert(typeof b)undefined(1、真的没定义,2、虽然定义了但没有给东西)
3、NaN (not a number) 非数字
任何数和nan相加都是nan
NaN和NaN是不相等的
<script>
var a=parseInt('abc');
alert(isNaN(a));
</script>
判断是不是NaN(检测)
以下两个是显示类型转换(强制类型转换)
4、parseInt()转出来的都是整数
5、parseFloat()转可以是小数3.5
以下是隐式类型转换
<script>
var a=5;
var b="5"
alert(a = = b); //先转换类型,然后比较
alert (a = = = b) //不转换类型,直接比
</script>
<script>
var a="12";
var b="5";
alert(a+b);//两种用途:1字符串连接,2、数字相加
alert(a-b);//一种用途:数字相减
</script>
变量的作用域(作用范围)
1、局部
2、全局
闭包:子函数可以使用父函数的局部变量
命名规范:
可读性-能看懂
规范性-符合规则
匈牙利命名法:
类型前缀;(变量取名字里用,函数时不用)
首字母大写;