JS的函数和对象

牧云@^-^@ 提交于 2020-03-29 00:28:47

1.递归

 在函数的内部调用自身,默认是一个无限循环。

2.匿名函数

 没有名称的函数  function(){   }

 (1)创建函数

函数声明

function fn1(){   }

函数表达式

var fn2=function(参数){  函数体;  }

变量名就是函数的名称

 对比函数声明和函数表达式的区别

 函数声明创建函数存在提升,可以在任意位置创建;

 函数表达式使用变量创建的,只是存在变量提升,不存在函数提升,只能先创建,再调用。

 

 (2)匿名函数自调用

  目的:创建函数作用域包裹起来,防止污染全局。

(function(形参列表){

  //函数体中的变量和函数不能被外部访问

})(实参列表);

 (3)回调函数

  把匿名函数以实参的形式传递,意味着形参就是传递的匿名的函数名称

function fn(a){

  //调用fn的时候,匿名函数赋值给参数a,a就是函数名称

  a()  //执行传递的匿名函数函数体中的代码

}

fn( function(){ ... } );

 

3.全局函数

 parseInt()/parseFloat()/isNaN()

 encodeURI()  对网址中的汉字进行编码

 decodeURI()  对已经编码网址进行解码

 isFinite()  判断一个值是否为有限值  

            是->true 不是-false

       2/0 ->Infinity(无穷)   0/2 ->0

 eval()   执行字符串中的表达式

    eval('1+2')   //3

4.对象

 属于引用类型数据

 对象:是一组属性(property)和方法(method)的集合

 一台电脑: 属性有颜色、尺寸、品牌、内存大小...方法有看视频、上网、敲代码..

 一辆汽车: 属性有颜色、长度、品牌、空间大小...方法有代步,拉货、撞人...

 万物皆对象

 (1)JS中的对象

  内置对象: JS提供的

  宿主对象: 根据不同的执行环境划分

  自定义对象: 自己创建的对象

 (2)创建自定义对象

  对象字面量

  内置构造函数

  自定义构造函数

 (3)对象字面量创建对象

  使用大括号创建空对象

  属性名和属性值之间用冒号隔开

  多组属性之间用逗号隔开

  属性名中的引号可加可不加,如果含有特殊字符必须加

 

 (4)访问对象中的属性

  对象.属性名

  对象['属性名']

   如果访问的属性名不存在,返回undefined

 

 (5)内置构造函数创建对象

  new Object()  创建一个空对象

  需要单独为对象添加每一个属性

 

 (6)遍历对象中的属性

  访问对象中的每一个属性

for(var key in 对象){

  key  代表对象中的每个属性名

  对象[key]  通过属性名或者对应属性值

}

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!