初識Js 1.前言 學習js的第一天,簡單瞭解了一下JS的誕生歷史,JS相關變數,關鍵字,命名規範,JS數據類型以及各種數據類型之間的轉換,JS運算符的使用,二進位,八進位,十進位,十六進位之間的換算。 2.JS的誕生歷史 1.JavaScript誕生於1995年,由Netscape(網景公司)研發 ...
初識Js
1.前言
學習js的第一天,簡單瞭解了一下JS的誕生歷史,JS相關變數,關鍵字,命名規範,JS數據類型以及各種數據類型之間的轉換,JS運算符的使用,二進位,八進位,十進位,十六進位之間的換算。
2.JS的誕生歷史
1.JavaScript誕生於1995年,由Netscape(網景公司)研發,取名為Mocha,後與sun公司(Java研發公司)合作,1995年9月改名為Javascript。
2. JavaScript 的版本 JavaScript這種語言的基本語法結構是由ECMAScript來標準化的, 所以我們說的JavaScript版本一般指的是ECMAScript版本. 1997年7月,ECMAScript 1.0發佈。 1998年6月,ECMAScript 2.0版發佈。 1999年12月,ECMAScript 3.0版發佈。(數組的一些方法) 2007年10月,ECMAScript 4.0版草案想要提交ECMA組織, 但由於4.0版的目標過於激進, 改動太大, 並且微軟,谷歌等大公司極力反對;一直到2008年7月ECMA開會決定,中止ECMAScript 4.0的開發(即廢除了這個版本) 2009年12月,ECMAScript 5.0版正式發佈 2011年6月,ECMAscript 5.1版發佈
3.是一種基於對象的腳本語言,單線程語言,弱語言。
4.幾乎所有瀏覽器都支持JavaScript,IE瀏覽器,chrome,Firefox等。
3.JavaScript的組成
JavaScript由三部分組成:
1. 核心(ECMAScript):
是一種由ECMA國際(前身為歐洲電腦製造商協會,英文名稱是European Computer Manufacturers Association)通過ECMA-262標準化的腳本程式設計語言。ECMAScript 定義的只是這門語言的基礎,他的組成部分有:語法、類型、語句、關鍵字、保留字、操作符、對象等。
2. 瀏覽器對象模型(BOM):
Browse Object Model, 瀏覽器對象模型,提供與瀏覽器交互的方法和介面(API), 開發人員使用BOM可以控制瀏覽器顯示頁面以外的部分。
3. 文檔對象模型(DOM):
Document Object Model,文檔對象模型,提供訪問和操作網頁HTML內容的方法和介面。
4.JS的書寫規則以及運行
1.JS的書寫
1. Html標簽內部編寫JavaScript代碼--不推薦使用。 2. Html文件內部編寫JavaScript代碼。 3. 通過<script>標簽引入外部的 . js文件。2.JS的命名規則
1.數字、字母、下劃線、$符號組成,其中數字不能做開頭。並且變數名應做到見名知意,常用的方式有駝峰命名法,匈牙利命名法,同時變數名不能是保留字或者關鍵字 。 2.關鍵字:一組具有特定用途的關鍵字,這些關鍵字可用於表示控制語句的開始或結束,或者用於執行特定操作等。 值得註意的一系列關鍵字: break do instanceof typeof case else new var catch finally return void continue for switch while debugger function this with default if throw delete in try值得註意的一系列的保留字(將來有可能用作關鍵字):
abstract enum int short boolean export interface static byte extends long super char final native synchronized class float package throws const goto private transient debugger implements protected volatile double import public 3.駝峰命名法 大駝峰:第一個單詞的首字母大寫 UserName 小駝峰:第二個單詞開始首字母大寫 userName / getElementById() / myStudentScore() 4.變數命名儘量見名知意,可參考下圖
5.變數的數據類型
1.特殊類型:Undefined,Null。
2.5種簡單數據類型:number數字,string字元串,boolean布爾值,undefined未定義,null空對象。
3.一種複雜的數據類型(引用類型):object。
4.檢測變數的方法:typeof(變數名)或者typeof 變數名**。
5.NaN和isNaN介紹,NaN的概念及應用
當數學計算無法得到數字結果,該變數的值為NaN(not a number)
註意:因為NaN代表非數字,它不等於任何值,也不能做運算, 即使alert(NaN == NaN); 結果也是false typeof NaN ===‘number’ isNaN(num)方法,該方法判斷num變數的值是否是NaN(不是一個數字),結果是布爾值,如果num不是一個數字輸出true查看類型:
類型轉換:
字元串string轉boolean:
number轉boolean:
將undefined和對應的null轉為Boolean:
Boolean 轉為 number (false 0 true 1):
將對應的undefined和null 轉為number:
6.運算符及表達式
其中較為值得註意的是++,--
i++ 與 ++i 的主要區別有兩個:
1、 i++ 返回原來的值,++i 返回加1後的值。
2、 i++ 不能作為左值,而++i 可以。
1.算數運算符
2.邏輯運算符
3.賦值運算
4.位運算
5.三目運算符
6.保留小數的方法
總結:
1.Number方法 轉為number類型的值 2.Boolean方法轉為boolean類型的值 3.String方法轉為string的值(toString方法) 4.toFixed方法轉為字元串 保留多少位小數 5.Infinity 表示無窮大 6.isNaN 判斷是否為NaN 7.typeof 檢索對應的類型(所有的引用類型都是object 其他顯示對應的值類型)
7.進位轉換
N進位就是“逢N進1,借1當N。”
N進位轉換為10進位,直接寫成多項式計算就可以了,
就像 253(10進位)=2*10^2+5*10+2
253(8進位)=2*8^2+5*8+3=171(10進位)
253(16進位)=2*16^2+5*16+3=595(10進位)
110111(2進位)=1*2^5+1*2^4+0*2^3+1*2^2+1*2^1+1=55
10進位轉換為N進位,那就要“除N取餘”了。
如 485轉換為8進位:
485/8=60........5
60/8=7........4
7/8=0........7
所以485(10進位)=745(8進位) (註意:最後的數要倒序寫)
又如 4593轉換為16進位:
4593/16=287..........1
287/16=17............15
17/16=1................1
1/16=0..................1
所以,4593(10進位)=11F1(16進位)(註:16進位的數需要16個數位,用0-9和A-F表示)
再如 123轉換為2進位:
123/2=61..........1
61/2=30...........1
30/2=15............0
15/2=7.............1
7/2=3................1
3/2=1...............1
1/2=0...............1
所以 123(10進位)=1111011(2進位)
8.課後練習
1, 入職薪水10K,每年漲幅入職薪水的5%,50年後工資多少?
2, 為抵抗洪水,戰士連續作戰89小時,編程計算共多少天零多少小時?
3, 小明要到美國旅游,可是那裡的溫度是以華氏度為單位記錄的。它需要一個程式將華氏溫度(80度)轉換為攝氏度,並以華氏度和攝氏度為單位分別顯示該溫度。提示:攝氏度與華氏度的轉換公式為:攝氏度 = 5/9.0*(華氏度-32)
4, 給定一個三位數,分別把這個數字的百位、十位、個位算出來並顯示。
歡迎點贊評論^^