直播js的学习笔记day_03

020、让函数执行有哪几种方式
 
1、js是基于事件驱动的语言、因此可以通过js的事件来调用函数让函数执行
 
2、直接写函数名加()
 
3、立即执行函数。在字面量函数后面({}后面加())
 
021、定义函数的几种方式
 
1、关键字函数:function fnName(){};
 
2、字面量函数:var fn = function(){};
 
3、构造函数:var fn = new Function()
 
022、函数的作用
 
1、减少代码的编写(代码重复利用)
 
2、隐藏处理细节,便于今后的修改和维护
 
3、控制执行时机
 
023、谈谈你对参数的理解
 
1、参数分为:形参和实参
 
2、有了参数以后可以使函数变的更加灵活
 
3、形参和实参要一一对应
 
4、如果对应的形参没有传值,那么值是undefined
 
 
024、什么是作用域链?
 
1、简单说就是作用域集合  当前作用域 -> 父级作用域 -> ... -> 全局作用域   形成的作用域链条
 
全局作用域的变量和方法都可以进行调用
 
局部的变量和方法只能局部进行调用( 除闭包外 )
 
局部可以访问全局的变量和方法
 
025、console.log与console.dir的区别
 
console.log()可以取代alert()或document.write(),在网页脚本中使用console.log()时,会在浏览器控制台打印出信息。
 
console.dir()可以显示一个对象所有的属性和方法。
 
026、谈谈你对arguments的了解
 
1、函数内部自带的一个对象
 
2、存储的是所有的实参
 
3、可以使用[]及下标访问arguments中的内容   arguments[0]  访问第一个实参
 
4、可以使用 arguments.length 确定传入实参的个数
 
5、最常用的用途: 判断传入参数的个数(根据参数个数做不同的事情)
 
 
027、请说一下js的编译和执行
 
1、js的预编译:
     a、把var 和 function 定义的变量提升到script的最上方
     b、赋值语句不会被提升,哪怕等号后面是一个function
2、js执行:代码从上往下执行
 
028、简单的阐述一下js的变量声明提升
 
变量声明和函数声明从他们代码中出现的位置被移动到执行环境的顶部,这个过程就叫做提升  只有声明操作会被提升,赋值和逻辑操作会被留在原地等待执行
 
Js编译器会把变量声明看成两个部分分别是声明操作(var a)和赋值操作(a=2)

猜你喜欢

转载自www.cnblogs.com/w0613/p/9448481.html