2016年5月25日晚上(妙味课堂js基础-1笔记一) 一、JavaScript基础
1、JavaScript组成
ECMAScript:解释器、翻译
DOM:Document Object Model文档对象模型
BOM:Browser Object Model 各组成部分的兼容性,兼容性问题由来(浏览器对象模型)
2、变量类型
类型:typeof运算符
用法、返回值
常见类型: number、string、boolean、undefined、object、function
一个变量应该只存放一种类型的数据
注意:(1)关于object对象;
<script type="text/javascript"> window.onload=function () { a=document.getElementById("div1") alert(typeof a); //这里的a就是对象 } </script>
(2)关于function函数;
<script type="text/javascript"> a=function () { alert(typeof a); //这里的a就是函数 } </script>
(3)关于undefined;
<script type="text/javascript"> var b; alert(typeof b); undefined:1、你真的没有定义;2、虽然定义了,但是没有给赋值; </script>
3、什么是对象?
基本类型:12,”abcd“,true;(不可再分为其他东西,只由自身组成,而不是由其他东西组成);number、string、boolean、undefined、
复合类型:对象 object、function、arr、
如div id=”字符串“
宽度=数字;
4、变量类型转换
parseInt() 函数可解析一个字符串,并返回一个整数。
<script type="text/javascript"> var a='12'; alert(parseInt(a)+1); </script>
当输入的是下面的代码时:
<script type="text/javascript"> var a="px"; //第一个数不是数字 alert(parseInt(a)); //弹出的是NAN;非数字; </script>
parseFloat() 函数可解析一个字符串,并返回一个浮点数。
关于数据类型转换:
1、显示类型转换(强制类型转换)
-parseInt()、parseFloat();
-NaN的意义和检测;
2、隐式类型转换
- ==、===;
-减法;
加号:1、字符串连接;2、数字相加
减号:数字相减;
5、作用域和闭包
变量作用域(作用范围)
局部变量、全局变量;
<script type="text/javascript"> var a; //全局变量 function aaa() { a=12; //局部变量 } function bbb() { alert(a) } aaa(); bbb(); </script>
闭包:如下代码所示:
<script type="text/javascript"> function aaa() { //父函数 a=12; function bbb() { //子函数 alert(a) //子函数可以使用父函数的局部变量;这种特性就是闭包。 } bbb(); } aaa(); </script>