JavaScript基礎知識必知!!!

来源:https://www.cnblogs.com/zyp777/archive/2018/04/29/8972467.html
-Advertisement-
Play Games

JavaScript一種直譯式腳本語言,是一種動態類型、弱類型、基於原型的語言,內置支持類型。 JS作用:表單驗證,減輕服務端的壓力;添加頁面動畫效果;動態更改頁面內容;Ajax網路請求。 下麵簡單介紹JS的基礎知識: >>> JS基礎知識 一、基本結構 <script type="text/jav ...


JavaScript一種直譯式腳本語言,是一種動態類型、弱類型、基於原型的語言,內置支持類型。

JS作用:表單驗證,減輕服務端的壓力;添加頁面動畫效果;動態更改頁面內容;Ajax網路請求。

下麵簡單介紹JS的基礎知識:

>>> JS基礎知識

一、基本結構

  <script type="text/javascript">

    alert("hahaha");

  </script>

 

二、使用JS的三種方式

 1、直接在HTML標簽中,使用事件屬性,調用JS代碼:

  <button onclick="alert('點我');">點我!</button>

 2、在頁面的任意位置,使用script標簽,插入JS代碼。

  <script type="text/javascript">

    alert("hahaha");

  </script>

 3、引入外部JS文件:

  <script src= "js/01.js" type="text/javascript"></script>

 [註意事項]

  ① JS代碼可以放在頁面的任意位置使用,但是放置的位置不同,將影響JS執行的順序

  ② 引入外部JS的script標簽中,不能再包含任何的JS代碼。

 

三、JS中的變數

 1、變數的聲明

   var num = 1;        // 使用var聲明的變數,屬於局部變數,只在當前作用於有效

   num = "hahaha";      // 不用var聲明的變數,預設為全局變數,在整個JS文件中可用

   var a=1,b,c=2;    // 使用一行代碼,聲明多個語句。其中b為Undefined

  [JS中變數聲明的註意事項]

  ① JS中聲明變數的關鍵字只有一個var,變數的類型,取決於所賦的值;

   如果聲明後為賦值,則為Undefined類型。

  ② JS中同一個變數,可以在多次賦值中,被修改數據類型;

    var num1=1;

    num = "字元串";

  ③ 變數可以使用var聲明,也可以直接賦值聲明。(區別:使用var聲明的作用域為局部變數)  

  ④ 在JS中,一個變數可以多次使用var聲明,後面的聲明相當於直接賦值,沒有任何作用;

  ⑤ JS變數區分大小寫,大寫和小寫不是一個變數;

 2、JS中的數據類型:

  Undefined:使用var聲明,但是沒有賦值的變數

  null:表示空的引用

  Boolean:真假

  Number:數值類型,包括整型和浮點型

  Object:對象

 3、常用數值函數

  ① isNaN:用於檢測是一個變數,是不是非數值(Not a Number);

   isNaN在檢測時,會先調用Number函數,嘗試將變數轉為數值類型,如果最終結果能夠轉化為數值,則不是NaN。

  ② Number函數:用於將各種數據類型轉為數值類型

   >>>Undefined:無法轉換,返回NaN;

   >>>null:轉為0;

   >>>Boolean:true轉為1,false轉為0;

   >>>字元串:

        如果字元串是純數值字元串,可以轉換,"123"-->123

        如果字元串包含非數值字元,不能轉換,"123a"-->NaN

        如果是空字元串,轉為0,""-->0 " "-->0

  ③ parseInt():將字元串轉為數值類型

   >>>如果是空字元串,不能轉," "-->NaN

   >>>如果是純數值類型字元串,可以轉換,且小數點直接捨去,不保留,"123"-->123 "123.9"-->123

   >>>如果字元串包含非數值字元,則將非數值字元前面的整數進行轉換,"123a"-->123 "a123"-->NaN

  ④ parseFloat():轉換機制與java相同。

   不同的是:轉換數值字元串時,如果字元串為小數則可以保留小數點,"123.5"-->123.5 "123"-->123

  ⑤ typeof():檢測一個變數的數據類型。

   字元串->String  數值->number   true/false->boolean

   未定義->undefined  對象/null->object  函數->function

 

四、JS中常用的輸入輸出語句

 1、alert():彈窗輸出

  2、prompt():彈窗輸入

  接受兩部分參數:① 輸入提示內容;② 輸入框的預設文本。(兩部分都可以省略)

  輸入的內容預設都是字元串。

 3、document.write("<h1>12345</h1> <h6>hahaha</h6>");

   在瀏覽器屏幕上面列印。

 4、console.log("hahaha");

   瀏覽器控制台列印。

 

五、JS中的運算符

 1、除號:無論符號兩邊是整數還是小數,除完後都將按照實際結果保留小數

  例如:22/10 --> 2.2

 2、===:要求等號兩邊的數據、類型和值都必須相同。如果類型不同,直接返回false

   ==:只判斷兩邊的數據,值是否相等,並不關心等式兩邊是否是同一種數據類型

   !=:不等  !==:不全等

 3、&、| 只能進行按位運算,如果兩邊不是數值類型,將轉為數值類型再運算;

  &&、|| 進行邏輯運算

 4、各級運算符的優先順序別表:

   

 

>>> JS分支與迴圈

一、if判斷

 1、JS中的真假判斷:

  ① Boolean類型:true為真,false為假;

  ② 數值類型:0為假,非0為真;

  ③ 字元串類型:""為假,非空字元串為真;

  ④ Null/Undefined/NaN:全為假;

  ⑤ Object:全為真。

 2、if判斷:

  if(undefined) {
      console.log(true);
  } else {
      console.log(false);      
  }

 

二、迴圈

 1、switch

  switch結構的()中可以放各種數據類型:

  比對時,採用  "==="  進行判斷,要求數據類型完全相等

  var num=1;
  switch (num){
    case 1:
         console.log("dengyu");
         break;
    default:
         console.log("budeng");
         break;
  }

 JS中switch 與 Java中switch 的區別:

 Java中switch不能判斷區間,而JS中switch可以判斷區間 ↓↓↓

    switch (true){
            case num>=0 && num<10:
                    console.log(1);
                    break;
            case num>=10 && num<100
                    console.log(2);
                    break;
            default:
                    console.log(3);
                    break;
    }

  2、do-while

    do{

 

    }while (false);

 3、for迴圈

    for(var i=0;i<100;i++){ }

 4、例:輸入一個數,判斷其是否是正整數,如果不是正整數,提示輸入有誤,請重新輸入;如果是正整數,反轉輸出這個數。

       var num=prompt("請輸入一個正整數:");
       var str="";
       if(parseInt(num) == num){
         while (num>0){
            var a = num%10;
             str += a;
             num = parseInt(num/10);
          }
          console.log(str);
       }else {
             console.log("您輸入的數不是正整數!");
       }

 

 未完待續>>>


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

-Advertisement-
Play Games
更多相關文章
  • 學習 使用 docker 也有一段時間了 但是在基礎去上面有些東西總是容易忘記 整理之前看到的文檔,看到一個問題 怎麼將一個容器導出成為tar,我本以為是首先 保存成為鏡像 再 save 進行保存 查找資料之後發現 並不是這樣的 我畫一張命令圖 這裡使用centos_latest.tar tar i ...
  • 由於需要使用到cilk plus和std=c++14,所以決定將編譯器升級。 基本教程如下: 1.下載GCC源碼: 2.解壓: 3.下載編譯所需依賴項: 4.建立編譯輸出目錄: 5.進入輸出目錄,執行以下命令,並生成makefile文件: 6.編譯: 接下來就是等待了,整個過程大約40分鐘左右。PS ...
  • 在 linux 編譯內核時 make menuconfig 報了下麵的錯誤。 *** Unable to find the ncurses libraries or the *** required header files. *** 'make menuconfig' requires the n ...
  • 在解壓的 linux2.6.15 文件夾下 make menuconfig 的時候出現下麵的錯誤: Makefile:452: target 'config' given more than once in the same ruleMakefile:452: *** mixed implicit ...
  • 今天分享的是89c51系列單片機的內部資源定時器/計數器,在所有的嵌入式系統中都包含這兩個內部功能。首先先瞭解幾個定時器/計數器相關的概念:•時鐘周期:時鐘周期 T 是時序中最小的時間單位,具體計算的方法就是1/時鐘源頻率,(一般單片機採用的是11.0592mHz)•機器周期:我們的單片機完成一個操... ...
  • mysql> insert into student values(162111,'周帥','男',21,'CS'); ERROR 1062 (23000): Duplicate entry '16211160127' for key 'PRIMARY'(duplecate為重覆的意思) prima... ...
  • 進入官網www.mysql.com ,選擇downloads; 選擇 Community 再選擇MySQL community server 選擇5.7的版本,這個看自己選擇,有問題看標題 選擇5.7.22版本,windows系統類型 選擇下載包,並點擊dawnload 無需註冊,點擊下載 下載後安... ...
  • 先來兩個問題 很多時候,在直覺上,我們都會認為JS代碼在執行時都是自上而下一行一行執行的,但是實際上,有一種情況會導致這個假設是錯誤的。 按照傳統眼光,console.log(a)輸出的應該是undefined,因為var a在a = 2之後。但是,輸出的是2。 再看第二段代碼: 有人會想到第一段代 ...
一周排行
    -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.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...