2018年2月28日,第七天課程管挟。
課程主題:bitwise operator,JS dates轿曙。
今天早上一直在處理工作上的一些事兒,所以學(xué)習得晚了些。
學(xué)習反饋:1.bitwise operator就是做各種邏輯運算的字符导帝,或守谓、與、異或您单、非等等斋荞。正好在前天做一個關(guān)于“Nim”游戲的練習時深入接觸了異或這個邏輯運算。雖然那個練習還沒做出來虐秦,但對于今天學(xué)習邏輯運算還是有不小幫助平酿。
今天的第一個練習比較簡單,就是給你一個連續(xù)數(shù)組悦陋,最大值不大于n蜈彼,再給你一個k,然后對n里不同的兩個值進行“與”運算叨恨,然后找出不大于k的那個值柳刮。編寫程序如下:
這個練習花了我將近一個小時挖垛,其原因就是我對題目理解上出現(xiàn)了錯誤:第一是要對十進制的數(shù)做一次二進制的變化后再來做&運算痒钝;第二是將得到的二進制結(jié)果再做一次十進制運算后輸出結(jié)果。實際上在對兩個整數(shù)進行&運算時痢毒,如果是兩個十進制數(shù)進行&預(yù)算其結(jié)果就是十進制數(shù)送矩,二進制數(shù)比對也是這樣。 最后是在定義Maxmimum變量是一開始使用let類型哪替,一直運行通不過栋荸;后來改成var類型后就通過。
趁著這個機會再來復(fù)習一下var凭舶、let晌块、const之間的區(qū)別。具體的可以參看:https://www.hackerrank.com/challenges/js10-let-and-const/topics帅霜。個人覺得這是我翻閱資料時對這個它們之間區(qū)別的最好概述匆背。var可以是函數(shù)內(nèi)的變量也可以作為全局變量,而let大多在語句身冀、塊和表達式中使用(照我之前的錯誤钝尸,就是let沒有重新進行賦值。)
在學(xué)習過程中搂根,不斷復(fù)習之前的東西珍促,能帶給自己更深刻的記憶。
2.第二個學(xué)的是JS dates剩愧,就是怎么用函數(shù)去調(diào)去時間猪叙,再去判斷時間。比較簡單,我就不多說了穴翩。直接放上我的練習截圖:
雖然簡單成洗,但還是出現(xiàn)了一個小狀況,就是在用case的時候藏否,忘記加上break瓶殃,結(jié)果一直輸出Sunday,后來加上break后副签,問題解決遥椿。如果在case中沒有break,則當參數(shù)值等于其中某個case的時候淆储,它會先進入這個case冠场,然后在繼續(xù)執(zhí)行下面的case。這點也是要注意的本砰。