兄弟会-全栈工程师 第二天笔记
指令式编程
让人用计算机的方式编写程序
在交互模式下可以执行程序指令(程序指令不等于CPU指令)
NodeJS 运行于服务器端的JS程序
程序语言的基本执行流程:
1. 顺序
2. 分支
3. 循环
抽象思维
将重复的工作抽象成一个个最小的功能,然后将最小的功能封装成一个个函数,方便组合灵活调用。
类似于“活字印刷术”
1. 将基本的功能写出来
2. 找规律
3. 根据规律抽象
JS语法特性
特别注意:
1. 变量的作用域
· 当函数内部变量前有 var 声明时,则变量使用的是函数内部的局部变量;
· 当函数内部变量前没有使用 var 声明时,则变量向外层寻找直到寻找到[window.变量]为止;
· 全局变量:
var a;
等于:
window.a;
<script>
var a = 5;
function f(){
var a = 1;
alert(a);//1
}
function g(){
a++;
alert(a);//6
}
alert(a);//5
f();//调用f函数
g();//调用g函数
</script>
2. JS闭包(匿名调用)
解决命名空间、包污染问题
例如:
(function(){
var a = 1;//定义局部变量
console.log(a);//1
})();
(function(){
var a = 2;//定义局部变量,但不与上面的定义的变量a冲突,且互不影响!
console.log(a);//2
})();
3. 回调函数
var f = function(){
//把函数做为返回值
return (function(){
console.log('inner Function !');
});
};
var t = f();//把f函数的返回值(函数)赋值给t,这样t也是一个函数了!
console.log(t);//function(){console.log('inner Function !');}
t();//inner Function!