知識點回顧
- markdown
- 全棧工程師
- 編程語言發(fā)展歷程
ps: 這一塊我斷網了
指令式編程思維
順序
var a = 0;
a = 2;
a += 1;
選擇
if () {
} else {
}
循環(huán)
1.
a:
...
// 死循環(huán)
goto a;
2.
a:
if () goto b:
...
b:
3.
var flag = true;
while (flag) {
if() {
flag = ture;
}
}
4.
for (var i=0; i<100; i++) {
// break; continue;
}
例lession1.js:
打印*號
打印矩形*號
var printStr = "";
function printChar(k, c) {
for (var i=0; i<k; i++) {
printStr += c;
}
}
function n() {
printStr += "\n";
}
function f(c, k) {
for (var j=0; j<c; j++) {
printChar(k, "*");
n();
}
}
f(5,5);
console.log(printStr);
抽象成打印函數(多少列,符號), 打印多少行(矩形,行列), 打印正方形(邊長)
打印一個圖形, 最簡單最復雜的就是依次打出, 然而會有很多重復事件, 人討厭而機器喜歡, 這時發(fā)現規(guī)律, 將所有重復事件抽象成一個整體函數, 然而此時代碼利用率極低, 所以進一步抽取, 將整體函數抽取成一個個具有某特定功能的小函數, 由此構建成可打印各種各樣圖形的函數.
例lession1.html
多人合作開發(fā)很容易出現命名空間的問題, 下面使用多種方法重在說明和解決命名空間的問題.
<html>
<head>
<title></title>
<script type = "text/javascript">
var a = 5; // window.a = 5;(window是網頁的全局,js的全局式global)
function f() {
var a = 3; // 這里因為作用域不同所以不會有命名空間問題
alert(a); // 3
// alert(window.a); // 在局部里使用window獲得全局變量
window.a = 6;
}
alert(a); // 5
f();
alert(a); // 6
// 打印內容是536
</script>
<script type = "text/javascript">
(function(){
var user;
})(); // 自執(zhí)行, 解決命名空間問題
</script>
<script type = "text/javascript">
var a = function(){}
</script>
<script type = "text/javascript">
function f() {
return function() {}
}
var x = f();
x(); // 這里x執(zhí)行的就是f函數返回的函數
</script>
</head>
<body>
</body>
</html>
作業(yè)
函數敲一遍
矩形
空心矩形
正方形
空心正方形
梯形
空心梯形
三角形
空心三角形
ubuntu 16.04