JavaScript基礎<一>

1.JS簡介
  • JavaScript簡稱JS,是前端開發的一門腳本語言(解釋型語言)
    • 解釋型語言:程序執行之前,不需要編譯,直接運行時邊解析邊執行的語言
    • 編譯型語言:程序執行之前,需要一個專門的編譯過程,把程序編譯成為機器語言的文件,比如exe文件
  • 組成部分
    • ECMAScript:JavaScript的語法標準
    • DOM(Document Object Model) 通過js操作網頁元素
    • BOM(Browser Object Model) 通過api操作瀏覽器
  • 特點
    • 簡單易用
    • 解釋執行
      • 編譯執行 java c# 轉化為.dll可執行文件==>電腦讀取.dll可執行文件
    • 基于對象面向過程
2.JS的書寫位置
  • 內嵌式

    </body>
    ... ...
    <script type="text/javascript">
        alert("hello world");
    </script>
    </body>
    
    • 通常將js代碼放在body的最后, 因為HTML是從上至下加載, 而js代碼通常是給標簽添加交互(操作元素), 所以需要先加載HTML, 否則如果執行js代碼時HTML還未被加載, 那么js代碼將無法添加交互(操作元素);
    • HTML頁面中出現<script>標簽后,就會讓頁面暫停等待腳本的解析和執行。無論當前腳本是內嵌式還是外鏈式,頁面的下載和渲染都必須停下來等待腳本的執行完成才能繼續, 所以如果把js代碼寫在head中, 那么js代碼沒有執行完畢之前后續網頁無法查看
  • 外鏈式

    <script src="1.js"></script>
    
    • 外鏈式的script代碼塊中不能編寫js代碼, 即便寫了也不會執行
    <script type="text/javascript" src="01-js書寫格式.js">
    alert("hello world"); // 不會被執行
    </script>
    
  • 注意

    • 寫js代碼的時候,分號不能省略
    • 由于每次加載外鏈式的js文件都會發送一次請求, 這樣非常消耗性能, 所以在企業開發中推薦將多個JS文件合成為一個JS文件,以提升網頁的性能和加載速度
3.JS中輸出消息的幾種方式
  • alert() 在頁面彈出一個對話框,早期JS調試使用
  • Confirm() 在頁面彈出一個對話框, 常配合if判斷使用
  • console.log() 將信息輸入到控制臺,用于js調試
  • prompt() 彈出對話框,用于接收用戶輸入的信息
  • document.write()在頁面輸出消息
    • document.write不僅能輸出信息,還能輸出標簽。
  alert("哈哈");
  confirm("哈哈");
  console.log("哈哈");
  prompt("哈哈");
  document.write("第一行<br><strong>第二行</strong>")
3.JS的注釋
  • 快捷鍵 ctrl+/
  • 單行注釋 //
  • 多行注釋 /* */
4.變量
  • 定義變量
  • 給變量賦值
  • 定義并賦值
var name;//定義變量
name = "李四";//給變量賦值

var name = "李四";//定義變量并且賦值
  • 變量的命名規范
    • 不能以數字或者純數字開頭來定義變量名
    • 不推薦使用中文來定義變量名
    • 不能使用特殊符號或者特殊符號開頭(-除外)
    • 不推薦使用關鍵字和保留字來定義變量名
    • 在JS中嚴格區分大小寫的


      關鍵字保留字.png
5.JS中的數據類型
  • 查看數據類型 typeof()
var n1 = 100;
alert(typeof(n1));
  • Number 數字類型
    • 包含整數和小數
    var num1 = 100;
    var num2 = 1.05;
    alert(typeof(num1));
    alert(typeof(num2));
    
    • 數字類型的表達方式
      • 十進制
      • 十六進制(從0-9,a(A)-f(F)表示數字。以0x開頭。)
      • 八進制(0開頭,0-7組成。)
    • 最大小值,無窮大小值(由于內存的限制,ECMAScript 并不能保存世界上所有的數值)
      • 最大值:Number.MAX_VALUE
      • 最小值:Number.MIN_VALUE
      • 無窮大:Infinity, 如果超過了最大值就會返回該值
      • 無窮小:-Infinity, 如果超過了最小值就會返回該值
      • NaN 非法數字(Not A Number),JS中當對數值進行計算時沒有結果返回,則返回NaN
  • String 字符串
    • 凡是用雙引號或者單引號引起的都是字符串。
    var str1 = "哈哈";
    var str2 = '哈哈';
    alert(typeof(num1));
    alert(typeof(num2));
    
  • Boolean 布爾數據類型
    • 只有2個值一個是true, 一個是false. 實際運算中true=1,false=0
    var n1 = 1;
    var n2 = 2;
    alert(typeof(n1==n2);//false
    alert(typeof(n1<n2);//true
    
  • Undefined 變量未初始化
    • 定義了變量,沒有給變量賦值,但變量在內存中是存在的
    var n1;
    alert(n1);
    
  • Null 空值(變量未引用)
    • 在內存中是找不到這個變量的
     var n1 = null;
    
6.比較運算符
  • 大于>
  • 小于<
  • 大等>=
  • 小等<=
  • 等于 ==
  • 不等于 !=
7.算術運算符
  • +號
    • 兩個數字類型的變量相加,得到的是一個數字類型。
    • 一個數字類型和一個字符串相加,得到的是一個字符串。
  • -號
    • 兩個數字類型的變量相減,得到的是一個數字類型。
    • 一個數字類型和一個數字字符串相減,得到的是一個數字類型。
    • 一個數字類型和一個非數字字符串相減,得到的是NaN,是一個數字類型。
  • /號
    • 兩個數字類型的變量相除,得到的是一個數字類型。
    • 一個數字類型和一個數字字符串相除,得到的是一個數字類型。
    • 一個數字類型和一個非數字字符串相除,得到的是NaN,是一個數字類型。
    • 0做為除數的時候,得到結果 Infinity (無限大),是一個數字類型。
  • %(取余數)
8.帶操作的運算符
運算符 示例 等價于
+= a+=b a=a+b
-= a-=b a=a-b
*= a*=b a=a*b
/= a/=b a=a/b
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 前言:最近在前端這塊,發現自己生疏了,連最基本的js都忘的差不多了。于是趁著周末,參考了廖雪峰老師的JS教程以及自...
    SkyLine7閱讀 630評論 0 2
  • 第一章: JS簡介 從當初簡單的語言,變成了現在能夠處理復雜計算和交互,擁有閉包、匿名函數, 甚至元編程等...
    LaBaby_閱讀 1,703評論 0 6
  • 1、JavaScript 定義了幾種數據類型? 哪些是原始類型?哪些是復雜類型?原始類型和復雜類型的區別是什么? ...
    字母31閱讀 132評論 0 0
  • 第三章 基本概念 3.1 語法 ECMAScript標識符一般采用駝峰大小寫格式,也就是第一個字母小寫,剩下的每個...
    小雄子閱讀 585評論 0 1
  • basic 在這里,不想直接照抄某個網站的文章或者觀點,只是標注一些注意點 對大小寫敏感 Comments // ...
    光小月閱讀 390評論 0 0