超基礎的入門JavaScript第一篇
既然是入門,咱先寫一些在編寫JavaScript代碼時,應注意基本的語法規則,避免程序出錯:
1.JavaScript嚴格區分大小寫,在編寫代碼時一定注意大小寫的正確。
2.JavaScript代碼對空格、換行、縮進不敏感,一條語句可以分成多行書寫。
3.如果一條語句結束後,換行書寫下一條語句,後面的分號可以省略。
一、JavaScript的引入方式
- 行內式 行內式是將JavaScript代碼作爲HTML標籤的屬性值使用。
<input type="button"value="一個按鈕" onclick="alert('這是一個行內的JavaScript引入方式')"/>
<a href="javascript:alert('這是另一個行內的JavaScript引入方式');">JavaScript</a>
- 嵌入式 嵌入式就是使用script標籤包裹JavaScript代碼,直接編寫到HTML文件中。
<script type="text/javascript">
JavaScript語句
</script><br>
- 外鏈式 外鏈式是指將JavaScript代碼保存到一個單獨的文件中,通常使用“js”作爲文件的擴展名,然後使用script標籤的src屬性引入文件中。
相比嵌入式,外鏈式的優勢有以下3點:
① 嵌入式會導致HTML與JavaScript代碼混合在一起,不利用修改和維護。
② 嵌入式會增加HTML文件的體積,影響網頁本身的加載速度,而外鏈式可以利用瀏覽器緩存提高速度。
③ 外鏈式有利於分佈式部署。網頁中鏈接的js、css、圖片等靜態文件可以部署到CDN服務器上,利用CDN的優勢加快下載速度。
二、變量保存數據
在JavaScript裏面有var變量,而且好像只有var變量。
他沒有確定的類型,他的類型取決於賦值給他的變量的類型。
也就是說像公交車,不管你是老的少的男的女的都能乘坐一樣,數值,字符串都可以用它來聲明。
var的本質就是來申明變量的
var str1=’白小白’ //申明並賦值
var str2=‘China’ //申明並賦值
str3=‘小黑’ //賦值
此外,還有非常重要的一點”變量的作用域”。
var關鍵字聲明變量,無論聲明在何處,都會被視爲聲明在函數的最頂部(不在函數內即在全局作用域的最頂部)。這個可以靈活應用。
全局作用域:在最外層定義的變量
局部作用域:在函數內部定義的變量
JS作用域的特點:首先在函數內部查找變量,找不到則到外層函數查找,逐步找到最外層,即window對象,並操作window對象的屬性。
下面來一個經典案例
<script>
var str = 'China';
function t1(){
var str = 'Japan';
function t2(){
var str = 'USA';
console.log(str);
}
t2();
}
t1();
</script>
三、函數
函數這玩意就有點千變萬化了,基於js定義方式比較靈活,而且每個人寫代碼的風格不同,就衍生處理多種多樣的js函數的寫法,但確實有章可循。如果不理解,看見一段代碼就很容易讓人手足無措。
咱也是剛開始學習,就先不深入了,函數這一方面會在以後深深的挖掘一下。
多數的語言中的函數都是基於爲了解決代碼量增多,維護困難、條理不清、閱讀困難,使代碼模塊化、組件化,以便於更好的維護。常將一些常用的功能模塊編寫成函數,通過調用函數來完成任務。JS也不例外。
在js中有內置函數(自行百度或者csdn裏面就有很多這樣的文章)和自定義函數兩種
<script type="text/javascript">
//定義函數
function sum(a,b){
var c=a+b;
return c;
}
//調用函數
document.write(sum(22,33))
</script>
//瞅見沒?這就是自定義函數
var name = prompt('請輸入你的名字:') //這個就是其中一個內置函數
四、對象
剛纔說了函數有內置函數和自定義函數兩種,而對象也有內置對象和自定義對象兩種
- 首先內置對象
(1) Window對象
window對象是JavaScript與瀏覽器之間交互的主要接入點。
提供了用於JavaScript腳本控制瀏覽器的一些接口。
舉例:彈出警告框、輸入框,或者更改網頁文檔內容等效果。
//常用輸出語句
alert() //警告框
console.log() //控制檯輸出
document.write() //文檔頁面輸出
prompt() //顯示可提示用戶進行輸入的對話框
(2)document對象
document對象是window對象的屬性之一,主要用於與網頁文檔進行交互。
(3)String對象
在代碼中直接定義的字符串,就可以作爲對象來使用。
String對象用於對字符串進行處理。
var str = 'apple'; // 定義一個字符串
alert(str.length); // 獲取字符串長度,輸出結果:5
alert(str.toUpperCase()); // 獲取轉換大寫後的結果,輸出結果:APPLE
alert('aa'.toUpperCase()); // 直接調用字符串的成員方法,輸出結果:AA
- 自定義對象
話不多說上代碼
<script type="text/javascript">
var Girlfriend ={} //創建一個女朋友的對象
Girlfriend.name='白小白'; //爲Girlfriend對象添加屬性
Girlfriend.gender='女';
Girlfriend.age='18';
document.write(name); //調用Girlfriend對象的name屬性
//創建Girlfriend對象的introduce介紹方法
Girlfriend.introduce=function(){
return '她叫'+this.name+'今年'+this.age+'歲了';
}
//調用Girlfriend對象的introduce介紹方法
document.write(Girlfriend.introduce())
</script>
五、事件
JS之所以出現就是爲了實現與用戶的交互,與用戶的一次次交互就是一個個事件。