【迴圈控制語句】
1、break:終止本層迴圈,繼續執行迴圈後面的語句;
當迴圈有多層時,break只會跳過一層迴圈;
對於for,continue執行後,繼續執行迴圈變數更新語句n++
對於while,do-while,continue執行後,繼續執行迴圈條件,判斷;所以使用這兩個迴圈時必須注意
continue一定要在n++之後,否則會造成死迴圈。
【巢狀迴圈特點】
外層迴圈控制行數,內層迴圈控制每行元素個數
[做圖形題思路]
1、確定圖形一共幾行,即為外層的迴圈的次數;
2、確定每行有幾種元素,代表有幾個內層迴圈;
3、確定沒種元素的個數,即為每個內層迴圈的次數;
tips:通常,找出每種元素個數,與行號的關係式,即為當前內層迴圈的最大值(從1開始迴圈)
【函式的宣告及呼叫】
1、函式宣告格式:
function 函式名(引數1,引數2,……)
>>>函式呼叫的格式:
函式名(引數1的值,引數2 的值,……)
2、函式宣告的幾點強調:
①函式名的宣告:必須符合小駝峰法則(首字母小寫,之後每乙個單詞首字母大寫);
②引數列表:可有、無引數,分別為有參函式和無參函式;
③宣告函式時的引數列表,稱為「形參函式」(變數的名);
呼叫函式時的引數列表,稱為「實參函式」(變數的值);
函式中,實際有效的引數取決於實參的賦值,未被賦值的形參,將為
undefined;
④函式如果需要返回值,可用return返回結果,
呼叫函式時,使用var 變數名=函式名();的方式,接受返回結果;
如果函式沒有返回值,則接受的結果為undefined。
⑤函式中變數的作用域:
在函式中,使用var宣告的變數,預設為函式區域性變數,只在函式內部能用;
不用var宣告的變數,預設為全域性變數(函式中的全域性變數,必須在函式呼叫後才能使用)
函式的形參列表,為函式區域性變數,只在函式內部使用;
⑥函式宣告與函式呼叫,沒有先後之分。即,呼叫語句可寫在宣告語句之前。
【匿名函式的宣告及呼叫】
1、宣告乙個匿名函式,直接賦給某個事件;
window.onload=function(){}
2、使用函式表示式,宣告匿名函式:
宣告函式表示式:var func = function(){}
呼叫函式表示式:func();
>>>使用匿名函式表示式,則呼叫語句,必須在宣告語句之後,否則報錯(對比常規函式宣告與呼叫區別)
3、使用自執行函式,宣告並直接呼叫匿名函式:
!function(引數1){}(引數1的值); //使用任意運算子開頭,一般使用!
(function(){}()) //使用()將匿名函式及之後的括號包裹
(function(){})() //使用()只包裹匿名函式表示式
三種寫法特點:
①結構清晰,開頭加!,結尾加(),不容易亂,推薦使用
②可以表明匿名函式與之後的()為乙個整體,推薦使用
③無法表明匿名函式與之後的()為乙個整體,不推薦使用
【函式內部的屬性】
[arguments物件]
1、作用:用於儲存呼叫函式時,所賦值的實參列表。
>>>當我們呼叫函式,並使用實參賦值時,實際上引數已經儲存到arguments陣列中,
即使沒有形參,也可以使用arguments[n]的形式呼叫引數;
2、arguments陣列個數取決於實參列表,與形參無關;
但,當第n個位置的形參,實參,arguments都存在時,
形參與arguments是同步的。(即在函式中修改其中乙個的值,另乙個會同步
變化)3、arguments.callee是arguments的重要屬性,用於返回arguments所在函式的引用;
arguments.callee()可以呼叫自身函式執行;
在函式內部呼叫函式自身的寫法,被稱為遞迴,所以arguments.callee()是遞迴呼叫時常用的方法;
[this]
函式呼叫語句所在的作用域,即誰呼叫函式,this指向誰;
【js中**的執行順序】
console.log(num);
var num = 10;
function func(){}
js中**執行,會先進行檢查、裝載,即宣告變數、函式等操作;
然後再進入執行階段,(變數的賦值等屬於執行階段)
所以,函式的宣告屬於檢查裝載階段,函式的呼叫屬於執行階段,
so,函式呼叫語句寫在函式宣告語句之前,並沒有任何關係。
所以上述**執行流程:
------檢查裝載階段--------
var num; //宣告變數
function funcn() //宣告函式
------執行階段-----------
console.log(num);
num=10;
funcn(); //執行函式的{}中的**
Hive 基礎你需要掌握這些
hdfs 中乙個簡單的 join查詢,是否需要擼一大串 我只會sql語句 能不能入坑大資料?這裡我們就來聊一聊 hive。hive 是一種資料倉儲工具,不提供資料儲存 資料還是儲存在 hdfs 上 它能讓你通過 sql語句實現 mapreduce 統計。hive 是乙個sql解析引擎,是將sql語句...
Hacker需要掌握的基礎
編譯語言 1.c語言 能力要求 精通 選用教材 c primer plus 中文版 第5版 其他教材 標準c程式設計 第3版 c語言入門經典 原書第3版 補充教材 c程式語言 c陷阱與缺陷 c專家程式設計 c與指標 2.c 語言 能力要求 熟練 選用教材 c primer 中文版 第4版 其他教材 ...
Hacker需要掌握的基礎
編譯語言 1.c語言 能力要求 精通 選用教材 c primer plus 中文版 第5版 其他教材 標準c程式設計 第3版 c語言入門經典 原書第3版 補充教材 c程式語言 c陷阱與缺陷 c專家程式設計 c與指標 2.c 語言 能力要求 熟練 選用教材 c primer 中文版 第4版 其他教材 ...