发表于: 2017-07-26 04:33:03
1 889
今天完成的事情:
找职位页面编写。
听景鑫的小课堂自执行函数,学习了函数相关的知识。
明天计划的事情:
写页面,研究一下官网的写法。
学习ui-bootstrap的用法。
遇到的问题:
暂无。
收获:
自执行函数,有两种理解,一种是立即执行函数,另一种是递归函数。一般情况下理解为立即执行函数
立即执行函数:
立即执行函数,如:
var a = function () {
console.log(1);
}()
!function a() {
console.log(2);
}()
new function () {
console.log(3);
}()
递归函数,即自身调用自身:
function a(){
console.log(1);
a();
}
可以和立即执行函数一起使用:
!function a(){
console.log(1);
a();
}()
更近一步,可创建一个匿名的立即执行递归函数:
(function () {
console.log(2)
arguments.callee()
}())
arguments数组内部的对象,有一些属性如下:
arguments.callee返回函数函数本身。
arguments.length是函数调用时接收的参数长度。
arguments[0]返回函数调用时接收的第一个参数。
函数的参数按值传递,如:
function a(num,person1,person2){
num=20;
person1.name="desu";
person2={};
person2.name="dajun";
}
var num=10,person1={},person2={};
person1.name="xiaoyu";
person2.name="xiaoli";
a(num,person1,person2);
console.log(num,person1.name,person2.name);//10 "desu" "xiaoli"
返回的值中只用person1被改变。
还知道了函数表达式的一种写法,可以将有名函数赋值给变量,如:
var b=function a(){
console.log(5);
}
这样写也是没问题的。
评论