20160805周国康笔记

复习:

  1. 项目文档:api手册 用markdown编写
  2. 不同编程语言的区别
  3. 函数式编程:让电脑像人一样思考
  4. 指令式编程:让人像电脑一样思考

总结:编程思想优化,思维抽象,功能细化,代码复用

1. 封装函数,减少代码冗余

//定义默认的输出字符串
var printstr = '';

function fun(r,c){
    for(var j=0;j<r;j++){
        //循环拼接输出一行字符串
        for(var i=0;i<c;i++){
            printstr += "*";
        }

        //当输出一行就换行
        printstr += "\n";
    }
}
//调用fun函数  5行10列
fun(5,10);

//打印输出
console.log(printstr);

2.0 进一步抽象功能

//定义默认的输出字符串
var printstr = '';

//打印行
function printChar(num,cont){
    //循环拼接输出一行字符串
    for(var i=0;i<num;i++){
        printstr += cont;
    }
}

//换行的函数
function br(){
    //当输出一行就换行
    printstr += "\n";
}

function fun(r,c){
    for(var j=0;j<r;j++){
        //打印行
        printChar(c,'#');
        //输出一行后就换行
        br();
    }
}
//调用fun函数  5行10列
fun(5,10);

//打印输出
console.log(printstr);

2.1 打印三角形

printChar(5,' ');
printChar(1,'*');
br();
printChar(4,' ');
printChar(3,'*');

br();
printChar(3,' ');
printChar(5,'*');

br();
printChar(2,' ');
printChar(7,'*');

br();
printChar(1,' ');
printChar(9,'*');

2.2 打印梯形

br();
printChar(3,' ');
printChar(5,'*');

br();
printChar(2,' ');
printChar(7,'*');

br();
printChar(1,' ');
printChar(9,'*');

2.3 打印空心矩形

//打印第一行
printChar(10,'*');
br();
printChar(1,'*');
printChar(8,' ');
printChar(1,'*');
br();
//打印中间带有空白的行
printChar(1,'*');
printChar(8,' ');
printChar(1,'*');
br();



printChar(1,'*');
printChar(8,' ');
printChar(1,'*');
br();
//打印最后的行
printChar(10,'*');

2.3 注重命名空间

立即执行的函数
(function(){
    var num = 10;
})();

var num 是一个局部变量

变量函数
var returnFun = function(){

}

function f(){
    return function(){

    }
}

var x = f();
x就等于f函数的内部函数

(function(){})(); //立即执行

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容