顯式轉換與隱式轉換

来源:http://www.cnblogs.com/oorx/archive/2017/12/14/8039470.html
-Advertisement-
Play Games

顯示轉換 === 1.題目:請輸入今年的年齡,求5年後多大? 2.字元串要轉換成number類型。 針對上述問題,需要將age轉換為數字型 2.1 可以使用Number(需要轉化的內容); 2.2 可以使用parseInt(需要轉化的內容); 2.3 可以使用parseFloat(需要轉化的內容); ...


顯示轉換


1.題目:請輸入今年的年齡,求5年後多大?

     //a.prompt接收到的數據是string類型的。
     var age = prompt("請輸入你今年的年齡");
     alert(typeof age);
     var age5 = age + 5;  // 這裡只會拼接成了15,而不是加5
     alert("我今年"+age+"歲了,5年後我"+age5+"歲了");

2.字元串要轉換成number類型。

 針對上述問題,需要將age轉換為數字型

2.1 可以使用Number(需要轉化的內容);

     var str = true;
     var num = Number(str);
     console.log(num); //1 
     console.log(typeof  num); //number
        //    註意:
        //   1.如果這個轉換的字元串本身就是一個數字,那麼可以轉換成功; 如果這個字元串本身不是一個數字,那麼轉成NaN.
        //   2.如果這個字元串本身是一個數字,前後有空格,也是會轉換成功的; 如果中間有空格,就轉成NaN.
        //   3.如果是一個"",或者是"  ",或者是flase,那麼會轉換成0.true轉成1,undefined轉成NaN
        //   4.如果字元串的本身是一個小數,也是可以轉換成功的。

2.2 可以使用parseInt(需要轉化的內容);

     var str = "123";
     var num = parseInt(str);
     console.log(num); //123
     console.log(typeof  num); //number
     //   註意:
     //   1.從左往右查找,直到遇到第一個非數字為止,前面的所有的內容轉換成數字。
     //   2.如果找完了,都沒有找到一個數字,那麼就轉換成NaN.
     //   3.""  和 "   " 轉化成NaN
     //   4.如果字元串裡面是小數,那麼轉換後只能得到他的整數部分。

2.3 可以使用parseFloat(需要轉化的內容);

     var str = "123.24ll";
     var num = parseFloat(str);
     console.log(num); //123.24
     console.log(typeof  num); //number
     // 註意:如果字元串裡面是小數,那麼轉換後還是小數。。
     //******註意: true會轉成1,false會轉換0.
     // 如果字元串轉數字,一般的使用parseInt或者parseFolat。
     // 如果是其他類型,比如布爾類型,使用Number();

3. 其他類型數據 轉換成字元串類型。

3.1 可以使用 String(需要轉化的內容);

    var num = 123;
    var str = String(num);
    console.log(str); //"123"
    console.log(typeof str); //string
    //註意: "123"   "true"  "false"  "undefined"   "null"  "NaN"

3.2 可以使用 需要轉化的內容.toString();

    var num = 123;
    var str = num.toString();
    console.log(str); //"123"
    console.log(typeof str); //string
    //註意: "123"   "true"  "false  "NaN"
    //undefined 和null 不能使用toString。

4.其他的數據類型 轉換成 boolean類型。

4.1 可以使用Boolean(需要轉化的內容);

     var num = "";
     var res = Boolean(num);
     console.log(res); //false
     console.log(typeof  res); //boolean
     //註意:
     //那些可以轉換成布爾類型的false: 0  -0   false  ""  undefined  null  NaN
     //"  "會轉換成true

隱式轉換

1.其他的類型轉換成number類型。

1.1 可以在需要轉換的內容前面加上正號。 +

    var  str = "123";
    var res = +str;
    console.log(res); //123
    console.log(typeof res); //number

1.2 可以讓需要轉換的內容做算術運算不能後面用 +

    var  str = "123";
    var res = str * 1;
    console.log(res); //123
    console.log(typeof res); //number
    //註意: 一定要和連接符做一個區分。

2.其他的類型轉換成string類型 。 使用連接符 +“”

     var num = 123;
     var str = num + "";
     console.log(str); //"123"
     console.log(typeof  str);//string

3.其他的類型轉換成boolean類型 。 使用取反運算符

    var num = undefined;
    var res = !!num;
    console.log(res); //false
    console.log(typeof res);boolean
    // 註意:那些能轉成布爾類型的false:0 -0 false  undefiend null  NaN  ""

1.題目:請輸入今年的年齡,求5年後多大?
     //a.prompt接收到的數據是string類型的。
     var age = +prompt("請輸入你今年的年齡");
     var age5 = age + 5;
     alert("我今年"+age+"歲了,5年後我"+age5+"歲了");

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

-Advertisement-
Play Games
更多相關文章
  • 近段時間看了不少的前端面試題,很多大牛也對此做了整理。這篇文就算是借花獻佛啦。總體來說基本上每家問的問題也差不多,可能不同業務的公司問的問題的側重點也不太一樣,有的側重於移動端適配CSS佈局瀏覽器相容IE hack,而有的側重於JS邏輯面向對象設計模式考察等。可能將實際工作中會遇到的問題的場景,以及 ...
  • 1.內置對象 Date 日期對象 2.創建日期對象 2.1 根據當前的系統時間來創建日期對象。 2.2 根據指定的系統時間來創建日期對象。 參數有三種格式 2.3 獲取當前的時間,毫秒形式 2.4 獲取日期對象裡面的部分內容。 2.5 寫一個函數傳過來一個日期對象,返回yyyy MM dd HH:m ...
  • break 1.break 語句可用於跳出迴圈。 2.break所在的迴圈體已經結束。 continue 1.continue 語句中斷迴圈中的迭代,如果出現了指定的條件,然後繼續迴圈中的下一個迭代。 2.continue所在的迴圈體並沒有結束。 demo演示 ...
  • 1.switch case 一般的用它來做值匹配的。 //匹配 就是全等。 / 語法: switch(表達式){ case 值1: 表達式的值和 值1匹配上了,需要執行的代碼; break; case 值2: 表達式的值和 值2匹配上了,需要執行的代碼; break; case 值3: 表達式的值和 ...
  • 小伙伴們之前我們講過很多JavaScript的很多知識點,可以點擊回顧一下: 《JavaScript大廈之JS運算符》; 《JavaScript工作原理:記憶體管理 + 如何處理4個常見的記憶體泄露》; 《js 大廈之JavaScript事件》; 《JavaScript定義函數的幾種方式》; 《Java ...
  • 觀察者模式又叫做發佈訂閱模式,它定義了一種一對多的關係,讓多個觀察者對象同時監聽某一個主題對象,這個主題對象的狀態發生改變時就會通知所有觀察著對象。 它是由兩類對象組成,主題和觀察者,主題負責發佈事件,同時觀察者通過訂閱這些事件來觀察該主體,發佈者和訂閱者是完全解耦的,彼此不知道對方的存在,兩者僅僅 ...
  • 1.關係運算符 = ...
  • [1]概念 [2]菜單程式 [3]命令模式 [4]撤銷和重做 [5]命令隊列 [6]巨集命令 ...
一周排行
    -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.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...