JS第一周总结
这周我学习了JS的基础部分,大致分为了:
a.基础变量及数据类型
b.特殊数据类型
c.JS基础语句类型
d.BOM操作
e.DOM操作
###基础变量###
1.首先给变量取名,取名规范有3点:
1.变量首字符必须是字母或者美元符号$、下划线_ 三者之一。
2.变量名字中不能包括特殊符号,比如空格、加减号等符号。
3.变量中不能包括JS中的关键字,比如var之类的。
2.取好名字之后,我们需要将这个变量定义出来,并且赋值给这个变量:
1.语法: var a=5; ------定义变量a=5,变量名字是a,值是5;
3.变量的值在JS中有5种基础值,称为5种数据类型:
1.数字型(Number):数字类型,在JS中整型(Int)和浮点型(float)都属于Number型。
衍生:判断一个变量是不是数字类型,可以使用isNaN(不是一个数字类型)
alert(isNaN(1)) ------1是数字,所以弹出为false.
alert(isNaN("abc")) ------abc不是数字,所以弹出为true.
alert(isNaN("123")) ------"123"从根本上还是算数字,所以弹出为false.
2.字符串(spring):字符串类型,比如“abc”,"123".
3.布尔值(boolean):布尔值只有2个值,那就是true和false,一般用来做判断用,
比如if判断中,返回判断的时候值就是布尔值;
在JS中0,null,undefined,""的返回值都是false,其余的都是true;
4.null:代表不存在;
5.undefined:代表没有被定义;
4.变量的类型
我们可以使用typeOf判断变量的数据类型:
123的数据类型是Number;
"abc"的数据类型是spring;
"123"的数据类型是spring;
null的数据类型是object;
undefined的数据类型是undefined;
###特殊数据类型###
1.object:对象,还没学不给予讨论,以后补充,typeOf返回值应该就是object;
2.函数:function(),一个函数的数据类型就是function;
3.数组:Array.
####函数####
1.一个函数的定义:
var a=function(参数){
函数语句} -----表达式函数定义,此类函数不会在script中预加载,只有正式执行才加载
function a(参数){
函数语句} -----声明式函数定义,此函数会在script中预加载,提前取得变量,赋值undefined.
var a=new function("x","y","return x+y") ----构造式函数,只有SB才用- -!.
衍生:同一函数多次声明,后者会覆盖前者。
2.函数形式参数及return的使用:
1.function test(a,b){
return a*b} -----test这个函数传入参数a.b,函数中计算a乘b,并且返回a*b的结果。
3.匿名函数的立即调用:
语法:!function test(a,b){
return a+b;} ------当定义这个函数时,立刻返回a+b的值;
4.函数可以当成其他数据类型使用,传入其他函数中。
例如:function test(function a()){
函数语句}; -------将a函数的返回值当做参数传给test这个函数
5.函数的2个属性:
1.name:
function test(){
函数语句}; -----test函数的name就是test
2.length:
function test(a,b,c) {
函数语句}; -----test函数的length就是test传入的参数个数,即为3.
6.函数的作用域:
1. 全局作用域:在JS函数外定义的变量,可以作用于整个程序,直到关闭网页。
2. 局部作用域:在JS函数内部定义的变量,仅仅只是作用于当前定义的JS函数中,并且在此函数中 局部定义的变量会优先于全局定义的变量。
3. 函数本身也是一个值,也有自己的作用域。它的作用域绑定其声明时所在的作用域。
4. 函数在执行时,首先会在本函数寻找需要的变量,寻到就用,寻不到就到函数外部寻变量,知道寻到。
7.函数arguments对象:
由于JavaScript允许函数有不定数目的参数,所以我们需要一种机制,可以在函数体内部读取所有参数。这就是arguments对象的由来
####数组####
1.创建数组的方式
1.var a=[1,2,3]
2.var a=new Array(1,2,3)
2.数组的数据类型是object,判断变量是否是数组可以使用Array.isArray(a);
alert(Array.isArray(a)) ----a是一个数组,故弹出true;
3.数组的几个函数使用:
1.将数组中的数据转化为字符串输出: a.toSpring() ----返回值是“1,2,3”
2.给数组最后一位添加数据:a.push(“hello”) ----返回值是新数组的长度,即4.
3.给数组最后一位删除掉: a.pop() -------返回值是删掉的这个值,即3
4.给数组第一位添加数据: a.unshift("hello") ----返回值是新数组长度,即4.
5.给数组第一位删除数据:a.shift() -------返回值是删掉的这个值,即1。
6.将数组的数据截取出来,不改变原数组:
a.slice(0,2) -----取a数组中的数据,从第0个开始,到第3个结束(不包括第3个),即[1,2];
7.删除数组中的数据:
a.splice(0,2) -----从a数组第0个开始删除,删除个数2个,返回[3]
8.将数组中数据添加样式再以字符串输出:
a.join("*") -----返回值是新数组,即“1*2*3”
9.将数组连接起来:
var b=[4,5,6]
b.contact(a); -----返回值是新数组,即[1,2,3,4,5,6]
###JS基础语句类型###
判断类型
主要有if判断语句和switch:
if主要分为if 、if else 、if else if及if中的嵌套
swift语句语法:
var a = 1;
switch(a) {
case 1 : -----当传入参数符合case之后
console.log(1); -----执行case中的语句
break; -----停止语句判断
case 2 :
console.log(2);
break;
case 3 :
console.log(3);
break;
default :
console.log("default"); -----默认执行语句
}
循环类型
while循环,do while循环,for循环
###BOM###