JavaScript基礎教程總結(001-010章)

来源:https://www.cnblogs.com/iflygofy/archive/2018/09/21/9685251.html
-Advertisement-
Play Games

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>

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...