JavaScript 学习笔记2

第三章  基本概念express

1.注释函数

单行://this

多行:/*adsfkdldnfknksmd*/spa

2.严格模式.net

顶部添加“use strict”;指针

3.关键字和保留字对象

4.变量递归

松散类型,能够保存任何类型的数据ip

var操做符定义的变量将成为定义该变量做用域中的局部变量,不使用var将成为全局变量作用域

5.数据类型

a.基本数据类型:undifined:声明变量但未初始化     

                                                对未初始化和未声明的变量执行typeof操做符都返回了undefined值                             

                               Null:表示一个空指针对象,使用typeof返回一个空对象指针

                                        undifined值派生自null,alert(null==undifined)//true

 

                               Boolean:将任何类型的值转换为布尔值——Boolean()函数,任何类型的值调用都会返回                                                  一个布尔值

 

                               Number:NaN————用于表示一个原本要返回数值的操做未返回数值的状况

                                                                        任何涉及NaN的操做都会返回NaN                                                                                                                                  alert(NaN==NaN)//"false"

                                                    数值转换:Number()——用于任何数据类型

                                                                         parseInt()——字符串转化为数值,处理整数

                                                                         parseFloat()———字符串转化为数值,处理小数

                               String:一旦建立,值不能改变

                                             字符转换:toString()——任何值都有的方法

                                                                 转型函数String()——对于null和undefined没有tostring()的适用

b.复杂数据类型 :Object——数据和功能的集合,Object类型是全部它的实例的基础。

                                 每一个实例都具备下列的属性和方法:

                                constructor():保存着用于建立当前对象的函数

                               hasOwnProperty():检查给定属性在原型仍是实例中

                               IsPrototypeOf():检查是不是传入对象的原型

 

检测给定变量的数据类型:typeof

eg:alert(typeof message)//“”“string”

6.语句

If、do-while,while,

for-in:精准的迭代语句,可用来枚举对象的属性

for(property in expression)statement

label:statement——未来由break或continue语句引用

break和continue:break语句会马上退出循环,强制执行循环后的语句;continue也是当即退出循环,但以后会从循环的顶部继续执行

with:将代码的做用域设置到一个特定的对象中

switch

7.函数

特色:命名的参数只提供便利,但不是必须的;没有重载

arguments对象:arguments对象不能显式建立,只有函数开始时才可用。能够和命名参数一块儿使用,

arguments的length属性:返回调用程序传递给函数的实际参数数目。

arguments的callee属性:表示对函数对象自己的引用,也就是所指定的 Function 对象的正文,这有利于实现无名函数的递归或者保证函数的封装性。

函数内另外一个特殊对象:this——引用的是函数据以执行的环境对象

另外一个函数对象的属性:caller——保存着调用当前函数的函数的引用,若是在全局环境中调用,返回值为null 

注意callee和caller

caller
caller返回一个函数的引用,这个函数调用了当前的函数。
使用这个属性要注意:
1 这个属性只有当函数在执行时才有用
2 若是在JavaScript程序中,函数是由顶层调用的,则返回null

callee
callee放回正在执行的函数自己的引用,它是arguments的一个属性
使用callee时要注意:
1 这个属性只有在函数执行时才有效
2 它有一个length属性,能够用来得到形参的个数,所以能够用来比较形参和实参个数是否一致,即比较arguments.length是否等于arguments.callee.length

3 它能够用来递归匿名函数。

相关文章
相关标签/搜索