前端學習之Javascript第一天
Javascript基礎
一、聊聊Javascript
1、Javascript的歷史來源
94年網景公司 研發出世界上第一款瀏覽器。
95年 sun公司 java語言誕生
網景公司和sun合作。
Java+script ===> javascript
2、W3c規範
☞結構標準 html
☞表現標準 css
☞行為標準 js
3、JavaScript和ECMAScript的關係
ECMAScript是一種由Ecma國際前身為歐洲計算機制造商協會,英文名稱是European Computer Manufacturers Association,制定的標準。
JavaScript是由公司開發而成的,公司開發而成的一定是有一些問題,不便於其他的公司拓展和使用。所以歐洲的這個ECMA的組織,牽頭制定JavaScript的標準,取名為ECMAScript。
簡單來說ECMAScript不是一門語言,而是一個標準。符合這個標準的比較常見的有:JavaScript、Action Script(Flash中用的語言)。就是說,你JavaScript學完了,Flash中的程式也會寫了。
ECMAScript在2015年6月,釋出了ECMAScript 6版本,語言的能力更強。但是,瀏覽器的廠商不能那麼快的去追上這個標準。這些新的特性,我們就業班的深入,也會給大家介紹。
2003年之前,JavaScript被認為“牛皮鮮”,用來製作頁面上的廣告,彈窗、漂浮的廣告。什麼東西讓人煩,什麼東西就是JavaScript開發的。所以瀏覽器就推出了遮蔽廣告功能。
2004年JavaScript命運開始改變了,那一年穀歌公司,開始帶頭使用Ajax技術了,Ajax技術就是JavaScript的一個應用。並且,那時候人們逐漸開始提升使用者體驗了。
2010年的時候,人們更加了解HTML5技術了,HTML5
2011年,Node.js誕生,使JavaScript能夠開發伺服器程式了。
今天,JavaScript工程師是絕對的吃香,能夠和iOS、Android工程師比肩,毫不遜色的。
現在,公司都流行WebApp,就是用網頁技術開發手機應用。什麼意思呢?手機系統有iOS、安卓、windows phone。那麼公司比如說開發一個“攜程網”APP,就需要招聘三隊人馬,比如iOS工程師10人,安卓工程師10人,windows工程師10人。共30人,工資開銷大。並且,如果要改版,要改3個版本。所以,現在公司,都用web技術,用html+css+javascript技術來開發app。好處是不用招聘那麼多工程師,只需要幾個前端開發工程師即可。並且也易於迭代,就是網頁一改變,所有的終端都變了。
二、Js介紹
◆js是一款執行在客戶端的網頁程式語言。
◆組成部分
★ecmascript js標準
★dom 通過js操作網頁元素
★bom 通過api操作瀏覽器
◆特點
★簡單易用
★解釋執行
編譯執行 java c# 轉化為.dll可執行檔案==>電腦讀取.dll可執行檔案
★基於物件
面向過程
作用
◆表單驗證
◆輪播特效
◆開發遊戲
2、Js書寫位置
◆內嵌式
◆外鏈式
★先建立一個外部JS檔案
★通過src將外部js呼叫。
◆寫js程式碼的時候,分號不能省略。
◆推薦將JS程式碼寫在html結束標籤後邊
將多個JS檔案合成為一個JS檔案
三、輸出訊息的幾種方式
1、alert() 在頁面彈出一個對話方塊,早期JS除錯使用。
2、Confirm() 在頁面彈出一個對話方塊, 常配合if判斷使用。
3、console.log() 將資訊輸入到控制檯,用於js除錯。
4、prompt() 彈出對話方塊,用於接收使用者輸入的資訊。
5、document.write()在頁面輸出訊息
document.write不僅能輸出資訊,還能輸出標籤。
◆轉義字元
\” 轉雙引
\’轉單引
\n轉換行
\r 轉回車
四、Js註釋
快捷鍵 ctrl+/
單行註釋 //
多行註釋 /* */
五、變數
會變化的量。
變數是用來儲存資料的容器。
◆定義變數
◆給變數賦值
“=”是賦值運算子
◆定義並賦值
六、變數的命名規範
◆不能以數字或者純數字開頭來定義變數名。
◆不推薦使用中文來定義變數名。
◆不能使用特殊符號或者特殊符號開頭(-除外);
◆不推薦使用關鍵字和保留字來定義變數名。
★在JS中嚴格區分大小寫的!!!
七、資料型別
- 簡單資料型別
◆Number 數字型別
包含正數 負數 小數
數字型別的表達方式
★十進位制表示法
★十六進位制表示法
從0-9,a(A)-f(F)表示數字。以0x開頭。
★八進位制表示法
0開頭,0-7組成。
◆字串 String
凡是用雙引號或者單引號引起的都是字串。
◆布林資料型別 Boolean
只有2個值一個是true, 一個是false. 實際運算中true=1,false=0
◆undefined 變數未初始化
定義了變數,沒有給變數賦值
◆null 變數未引用 值為空 object
八、複雜資料型別
★ object 物件
★ array 陣列
1、判斷資料型別
typeof()
2、比較運算子
< > <= >= == !=
3、算術運算子
◆+ 加號
★兩個數字型別的變數相加,得到的是一個數字型別。
★一個數字型別和一個字串相加,得到的是一個字串。
◆— 減號
★兩個數字型別的變數相減,得到的是一個數字型別。
★一個數字型別和一個數字字串相減,得到的是一個數字型別。
★一個數字型別和一個非數字字串相減,得到的是NaN,是一個數字型別。
NaN, not a number
◆/ 除號
★兩個數字型別的變數相除,得到的是一個數字型別。
★一個數字型別和一個數字字串相除,得到的是一個數字型別。
★一個數字型別和一個非數字字串相除,得到的是NaN,是一個數字型別。
★0做為除數的時候,得到結果 Infinity (無限大),是一個數字型別。
◆% 取餘數
◆優先順序 有()先計算()裡邊的
九、帶操作的賦值運算
如果有疑問聯絡博主:y19970821ywty
要用到的工具,視訊教程,關注公眾號(Java學習之樂)直接免費獲取: