生成乙個陣列
列印這個陣列
對這個陣列進行xx操作
列印這個陣列
以氣泡排序為例:
//生成乙個陣列
let array
=
constn =
100
for
(let i =0
;i i ++
)
//列印這個陣列
for
(let i =0
;i<
array
.length;i
++)
//氣泡排序
for
(let i=0
;i<
array
.length;i
++)
}
}
//列印這個陣列
for
(let i =0
;i<
array
.length;i
++)
在這種練習裡,我們經常要列印這個陣列
也就是這段**:
//列印這個陣列
for
(let i =0
;i<
array
.length;i
++)
我們在最最開始,就已經明白了一點
真.程式設計師無法容忍任何重複性的勞動,包括複製貼上在內
你也許會問,為什麼不能複製貼上?
且聽我慢慢講,假如我們碰到的pm(產品經理)提的需求是這樣的:
生成乙個陣列
列印這個陣列
對這個陣列進行排序
列印這個陣列
當你按如上要求搞定後,pm跑過來說: 「把列印這個陣列的輸出格式變成
陣列的第
n個元素是
x
」你改了兩行**
然後pm又跑來說,「把陣列輸出的最開始加上一行:
下面開始輸出陣列
」你想改就改吧,於是你加了兩行**。
然後pm又跑來說: 「陣列輸出結束後要列印提示語表示資料輸出完畢」
……「陣列的輸出要四捨五入顯示兩位小數」
……「我們只輸出前十個就可以了」
……「不用輸出最開始的提示語了」
…………
什麼?你向我要刀?!?
什麼?磚頭也行?!!!!
姑娘,咱冷靜冷靜,古人云吃一塹長一智,咱下次千萬不要複製貼上了,咱們用函式對付他!
其實,大家對函式都不陌生,我們在高中數學裡就見過它:
y=f
(x)
對於f,每給定乙個x,就會對應輸出的乙個y,比如三角函式。在計算機語言中,函式也是類似的定義,即:函式是由事件驅動的或者當它被呼叫時執行的可重複使用的**塊。
這裡有幾個點:
1.事件驅動,這個我們在很後面的地方才會用到,暫時忽略;
2.被呼叫執行————函式是不會自己執行的,只有在「呼叫」時才會執行;
3.可重複使用————函式可以被反覆的「呼叫」,從而達到重複使用的目的;
4.**塊————函式也是**(這不廢話麼)
「什麼?整這麼多條條框框有什麼用,能看懂什麼?
talk is cheap,show me the code」
那麼好,我們先來看函式的定義,先來一種正統的方式,他是這個樣子的:
let sum
=function(a
,b)
這裡,我們定義了乙個求和函式sum ,它的作用是返回兩個數字的和,其中a,b是它的引數,function
是乙個關鍵字,表明接下的**是乙個函式,而return
c表明這個函式將把c的值返回;
試驗如下**:
let sum
=function(a
,b)
let d
=sum(3
,5)
console
.log(d
)
let a
=10
let b =20
let c
=sum(a
,b)
這段**有幾個有意思的地方:
在function(a,b)內,這裡的變數a,b,c只是在函式內部有效的(想起來我們之前聊過的變數作用域了麼?)
在sum定義以後,它並沒有執行,而是直到letd=
sum(3,
5)時,sum才執行了第一次,這時a是3,b是5
當letc=
sum(a,
b)時,sum執行了第二次,這時a是10,b是20
除了這種定義,還有一種更酷的定義方法,它是這樣寫的 :
let sum =(
a ,b)=>
簡化了相應的寫法,用 ()=> 來表明這是一段函式.
另外,最傳統的寫法應該是這種:
function
sum (a
,b)
在我們接下來相當長的一段學習過程中,這三種形式是等效的,因此討論函式的三種寫法在本質上和討論回字的四種寫法是一樣的,但是,在讀別的**的時候,我們要認得哈。
也就是說,在某個時刻,你會發現,他們還是有區別的理解了這一段**,我們再討論乙個有意思的話題,就是有我們可能不需要返回值,比在在上一文的要求裡,我們只需要輸出,不需要返回結果:
let printarray =(
items
)=>
}
當你呼叫乙個無返回值的函式時,如果你要強行拿到他的返回,那麼你會得到乙個 undefined.
也有不需要輸入值的,比如我們定義乙個列印歡迎詞的函式:
let printgreeting
=()=>
由於函式的東西可以講上一籮筐,所以咱分成上下兩部分哈。 記住,今天的重點是
將引子中的pm 的幾個要求都實現出來。
要多關愛 pm 哈。
零基礎學pythyon 安裝python程式設計環境
任何高階語言都是需要乙個自己的程式設計環境的,這就好比寫字一樣,需要有紙和筆,在計算機上寫東西,也需要有文字處理軟體,比如各種名稱的office。筆和紙以及office軟體,就是寫東西的硬體或軟體,總之,那些文字只能寫在那個上邊,才能最後成為一篇文章。那麼程式設計也是,要有個什麼程式之類的東西,要把...
產學深度合作,資料賦能科研,共創新文科大資料新生態
2020年12月,華東師範大學與和鯨科技達成合作,將基於和鯨科技旗下核心產品 modelwhale 打造乙個資料建立 發布 計算 引用 追溯等閉環的資料中臺,實現人文社科資料匯聚整合 資料提純加工 資料服務視覺化 資料價值變現,方便科研人員完成跨學科 跨領域的資料研究創新工作。這也是雙方在共同建立 ...