001-010章總結 001. JS簡介 1.什麼是語言 電腦就是一個由人來控制的機器,想叫它幹嘛就幹嘛。 我們要學習的語音就是人和電腦交流的工具,人類通過語言來控制,操作電腦。 編程語言和我們的中文,英文本質上沒有區別,只是語法比較特殊。 語言的發展歷程: -紙帶機:機器語言 -彙編語言:符... ...
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>001-010章總結</title>
</head>
<body>
<pre>
001. JS簡介
1.什麼是語言
電腦就是一個由人來控制的機器,想叫它幹嘛就幹嘛。
我們要學習的語音就是人和電腦交流的工具,人類通過語言來控制,操作電腦。
編程語言和我們的中文,英文本質上沒有區別,只是語法比較特殊。
語言的發展歷程:
-紙帶機:機器語言
-彙編語言:符號語言
-現代語言:高級語言
2.起源
js誕生於1995年,主要用於處理網頁中的前端驗證。
所謂前端驗證,就是指檢查用戶輸入的內容是否符合一定的規則。
比如:用戶名的長度,密碼的長度,郵箱的格式等。
3.簡史
JavaScript是由網景公司發明,起初命名為LiveScript,後來由sun公司介入更名為Javascript.
1996年微軟在最新的IE3瀏覽器中引入了自己對JavaScript的實現JScript。
為了確保不同瀏覽器標準一致,共同制定了js標準ECMAScript。
4.實現
不同瀏覽器廠商對該標準有不同的實現:
瀏覽器 js實現方式
Firefox SpiderMonkey
IE JScript/Chakra
safari JavaScriptCore
Chrome V8
carakan Carakan
一個完整的JavaScript實現應該由以下三部分構成:
ECMAScript DOM BOM
5.特點
-解釋型語言,不需要被編譯為機器碼在執行,直接執行。
-類似於C和JAVA的語法結構,像for,if,while等語句基本一樣。
-動態語言,一切內容都是不確定的,運用JIT技術,運行更快。
-基於原型的面向對象
002. JS的HelloWorld
JS代碼需要編寫到script標簽中
alert()控制瀏覽器彈出一個警告框
document.write()可以向body中輸出一個內容
console.log()的作用是向控制台輸出一個內容
<script type="text/javascript">
alert("哥,你真帥啊!!");
document.write("看我出不出來~~~");
console.log("你猜我在哪出來呢?");
</script>
003. JS編寫位置
-可以將js代碼編寫到外部js文件中,然後通過script標簽引入,寫到外部文件中可以在不同的頁面中同時引用,也可以利用到瀏覽器的緩存機制,推薦使用的方式.
script標簽一旦用於引入外部文件了,就不能在編寫代碼了,即使編寫了瀏覽器也會忽略,如果需要則可以在創建一個新的script標簽用於編寫內部代碼.
-可以將js代碼編寫到script標簽.
-可以將js代碼編寫到標簽的onclick屬性中當我們點擊按鈕時,js代碼才會執行雖然可以寫在標簽的屬性中,但是他們屬於結構與行為耦合,不方便維護,不推薦使用.
-可以將js代碼寫在超鏈接的href屬性中,這樣當點擊超鏈接時,會執行js代碼.
<div>
<script type="text/javascript" src="js/script.js"></script>
<script type="text/javascript">
alert("我是內部的JS代碼");
</script>
<button onclick="alert('討厭,你點我幹嘛~~');">點我一下</button>
<a href="javascript:alert('讓你點你就點!!');">你也點我一下</a>
<a href="javascript:;">你也點我一下</a>
</div>
004. JS基本語法
-多行註釋(/******/),註釋中的內容不會被執行,但是可以在源代碼中查看要養成良好的編寫註釋的習慣,也可以通過註釋來對代碼進行一些簡單的調試.
-單行註釋(//內容).
1.JS中嚴格區分大小寫
2.JS中每一條語句以分號(;)結尾
- 如果不寫分號,瀏覽器會自動添加,但是會消耗一些系統資源,
而且有些時候,瀏覽器會加錯分號,所以在開發中分號必須寫.
3.JS中會忽略多個空格和換行,所以我們可以利用空格和換行對代碼進行格式化.
<script type="text/javascript">
/*多行註釋
JS註釋
*/
console.log("hello"); //單行註釋語句用來在控制台輸出一個日誌
</script>
005. JS字面量和變數
字面量,都是一些不可改變的值,比如 :1 2 3 4 5 .
字面量都是可以直接使用,但是我們一般都不會直接使用字面量.
變數 ,變數可以用來保存字面量,而且變數的值是可以任意改變的
變數更加方便我們使用,所以在開發中都是通過變數去保存一個字面量,而很少直接使用字面量,可以通過變數對字面量進行描述.
<script type="text/javascript">
//聲明變數
//在js中使用var關鍵字來聲明一個變數
var a;
//為變數賦值
a = 123;
a = 456;
a = 123124223423424;
//聲明和賦值同時進行
var b = 789;
var c = 0;
var age = 80;
console.log(age);
</script>
006. JS標識符
在JS中所有的可以由我們自主命名的都可以稱為是標識符
例如:變數名、函數名、屬性名都屬於標識符
- 命名一個標識符時需要遵守如下的規則:
1.標識符中可以含有字母、數字、_、$
2.標識符不能以數字開頭
3.標識符不能是ES中的關鍵字或保留字
4.標識符一般都採用駝峰命名法
- 首字母小寫,每個單詞的開頭字母大寫,其餘字母小寫
helloWorld xxxYyyZzz
- JS底層保存標識符時實際上是採用的Unicode編碼,所以理論上講,所有的utf-8中含有的內容都可以作為標識符.
<script type="text/javascript">
/*var if = 123;
console.log(if);*/
//千萬不要這麼用
var 鋤禾日當午 = 789;
console.log(鋤禾日當午);
</script>
007. JS數據類型
數據類型指的就是字面量的類型
在JS中一共有六種數據類型
String 字元串
Number 數值
Boolean 布爾值
Null 空值
Undefined 未定義
Object 對象
其中String Number Boolean Null Undefined屬於基本數據類型
而Object屬於引用數據類型.
可以使用一個運算符 typeof來檢查一個變數的類型
語法:typeof 變數
檢查字元串時,會返回string
檢查數值時,會返回number
String字元串
- 在JS中字元串需要使用引號引起來
- 使用雙引號或單引號都可以,但是不要混著用
- 引號不能嵌套,雙引號不能放雙引號,單引號不能放單引號
在字元串中我們可以使用\作為轉義字元
當表示一些特殊符號時可以使用\進行轉義
\" 表示 "
\' 表示 '
\n 表示換行
\t 製表符
\\ 表示\
<script type="text/javascript">
var str = 'hello';
str = '我說:"今天天氣真不錯!"';
str = "我說:\"今天\t天氣真不錯!\"";
str = "\\\\\\";
//輸出字面量 字元串str
//alert("str");
//輸出變數str
//alert(str);
var str2 = "hello";
str2 = "你好";
str2 = 3;
//alert("hello,你好");
//console.log("我就是不出來~~~");
</script>
008. JS的Number
在JS中所有的數值都是Number類型,
包括整數和浮點數(小數)
JS中可以表示的數字的最大值
Number.MAX_VALUE 1.7976931348623157e+308
Number.MIN_VALUE 大於0的最小值 5e-324
如果使用Number表示的數字超過了最大值,則會返回一個
Infinity 表示正無窮
-Infinity 表示負無窮
使用typeof檢查Infinity也會返回number
NaN 是一個特殊的數字,表示Not A Number
使用typeof檢查一個NaN也會返回number
<script type="text/javascript">
//數字123
var a = 123;
//字元串123
var b = "123";
console.log(typeof b);
a = -Number.MAX_VALUE * Number.MAX_VALUE;
a = "abc" * "bcd";
a = NaN;
//console.log(typeof a);
a = Number.MIN_VALUE;
//console.log(a);
//在JS中整數的運算基本可以保證精確
var c = 1865789 + 7654321;
/*
* 如果使用JS進行浮點運算,可能得到一個不精確的結果
* 所以千萬不要使用JS進行對精確度要求比較高的運算
*/
var c = 0.1 + 0.2;
console.log(c);
</script>
009. JS布爾值
Boolean 布爾值
布爾值只有兩個,主要用來做邏輯判斷
true- 表示真
false- 表示假
使用typeof檢查一個布爾值時,會返回boolean
<script type="text/javascript">
var bool = false;
console.log(typeof bool);
console.log(bool);
</script>
010. JS的Null和Undefined
Null(空值)類型的值只有一個,就是null
null這個值專門用來表示一個為空的對象
使用typeof檢查一個null值時,會返回object
Undefined(未定義)類型的值只有一個,就undefind
當聲明一個變數,但是並不給變數賦值時,它的值就是undefined
使用typeof檢查一個undefined時也會返回undefined
<script type="text/javascript">
var a = null;
var b = undefined;
console.log(typeof b);
</script>
</pre>
</body>
</html>