淺談javascript六種資料型態以及特殊注意點_javascript技巧
在js中常見的六種資料型態:String類型、Null型別、Number型別、Boolean型別、Object型別。
1、typeof的注意點
涉及到資料類型,不免會提到,操作符 typeof。要注意:
1、typeof是操作符,不是方法。雖然我們經常使用typeof()的方式來取得物件的資料類型。
2、對 null 取typeof 是 object(這是因為null是 空的物件參考),對函數取 typeof 是 function
alert(typeof null); >function demo(){
alert('demo');
}
alert(typeof demo); //回復 function
2、為各種資料型態的物件變數設定初始值
注意,如果Object型別的 物件變數開始不知道賦值什麼,不要 var demo={};最好是 設定成null;
var d2=null;
d
d={' key':"shit"};
var d3='';//字串預設
3、undefined 和null 的區別和注意點
1.如果用 “==” 比較,他們是相等的,因為比較的是值
2、區分他們有兩種方法(他們的核心都是比較他們的 資料類型)
1)使用typeof 將他們區分開
程式碼如下:
🎜>alert(typeof undefined == typeof null); //false
4、Boolean的注意點
1、true 和1 比較相同,false 和0 比較是相同(是“==” 比較),因為內部會實現資料類型的轉化,將true 轉換成1,將false 轉換成0. js 內部有很多資料類型的自動轉換,這是大家一定要注意的。後面還會提到很多。 但是使用「===」 就不相等了,因為 他們的資料型別是不等的。
2、顯示轉換成Boolean,使用Boolean()方法顯示轉換,要注意的是各種資料型,何時轉換成true 什麼時候轉換成 false
1)String型,只要不是 空字串 都會 轉換成 true
2)Number型,只要不是 0 ,就算是 負數,都會轉換成 true
3)Object型,只要 不是 null 型,都會轉換成true
4)Undefined類型,都會轉換成 false
我就不做演示,大家可以自己動手試試看。
3、(***)if() 語句的 () 內部就是呼叫了 Boolean函數
5、Number型注意點
程式碼如下:
2、 支持 科學計數法 運算
3、NaN(Not a Number)
1)var d=0/0; 注意:在js 裡 是不會報錯的,而是回傳 NaN
2)可以透過Number.NaN 來取得
3)NaN和 任何 物件做運算都會回傳 NaN
4)isNaN()判斷是不是 NaN
程式碼如下:alert(isNaN(NaN));//true
alert(isNaN(12));//false
alert(isNaN('123'));//false:因為字元串類型的數字可以自動轉換成 數字
alert(isNaN('lew'));//true
alert(isNaN(false));//(*)false:因為bool 值可以轉換成數字,true變1,,false 變0
5)isNaN()內部執行原理:同樣適用於物件。實作原理:首相呼叫物件的valueOf()方法,如果能轉換成數字就直接做判斷;如果不能就再呼叫toString()方法,然後測試回傳值。
valueOf()內部呼叫了toObject()方法,兩個方法的 內部執行的原理:如下圖:
var box={ toString:function(){
alert(isNaN(box));//false
alert (box);//123 alert()內部也是先呼叫了物件的valueOf() 然後呼叫toString()方法
6)將其他資料型別轉換成Number型別
alert(Number(null));//(**)0
//除了 上面的 其他的都是 回 NaN
alert(Number(undefined))//NaN
Number()內部實作的原理:同isNaN() 也是先呼叫 valueOf() 然後再呼叫 toString()。 。所以可想而知,性能是比較差的。 。所以所過只要要被轉換的物件是字串的話,就呼叫 parseInt() 或 parseFloat()因為他們內部不需要對類型做判斷。
當parseInt()裡面的參數是 float類型的 那麼只 取得 數字的 整數部分
6、String類型
1)(*重要*)在ECMAScript中 字串有不變性:字串創建之後就不會再改變。 要改變一個已經被賦值的字串變量,首先要銷毀 變數中 字串,然後再用一個包含 新值的字串 填入變數。
複製程式碼
2)toString()方法 將其他資料型別轉換成 String型別。但是如果對 null 或undefined 進行操作的話就會報錯。
內部原理:先 呼叫 toString(),如果可以轉換成字串,就將結果直接回傳。否,再進行判斷是 null 還是 undefined,然後回傳‘null' 或 ‘undefined'
總結:如果知道 變數不可能是 null 或 undefined,就使用 toString()效能比 String(),因為 String()內部還要判斷,所以有損效能。

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

在MySQL資料庫中,性別欄位通常可以使用ENUM類型來儲存。 ENUM是一種枚舉類型,它允許我們在一組預先定義的值中選擇一個作為欄位的值。在表示性別這樣一個固定且有限的選項時,ENUM是一個很好的選擇。讓我們來看一個具體的程式碼範例:假設我們有一個名為"users"的表,其中包含了使用者的信息,包括性別。現在我們要為性別創建一個字段,我們可以這樣設計表結構:CRE

在MySQL中,最適合用於性別欄位的資料類型是ENUM枚舉類型。 ENUM枚舉類型是一種允許定義一組可能取值的資料類型,性別欄位適合使用ENUM類型是因為性別通常只有兩個取值,即男性和女性。接下來,我將透過具體的程式碼範例來展示如何在MySQL中建立一個性別欄位並使用ENUM枚舉類型儲存性別資訊。以下是操作步驟:首先,在MySQL中建立一個名為users的表格,包括

python憑藉其簡單易讀的語法,廣泛應用於廣泛的領域。掌握Python語法的基礎架構至關重要,既可以提高程式效率,又能深入理解程式碼的運作方式。為此,本文提供了一個全面的心智圖,詳細闡述了Python語法的各個面向。變數和資料類型變數是Python中用於儲存資料的容器。心智圖展示了常見的Python資料類型,包括整數、浮點數、字串、布林值和列表。每個資料類型都有其自身的特性和操作方法。運算符運算符用於對資料類型執行各種操作。心智圖涵蓋了Python中的不同運算子類型,例如算術運算子、比

MySQL中布林類型的使用方法詳解MySQL是一種常用的關聯式資料庫管理系統,在實際應用中經常需要使用布林類型來表示邏輯上的真假值。 MySQL中布林類型有兩種表示法:TINYINT(1)和BOOL。本文將詳細介紹MySQL中布林類型的使用方法,包括布林類型的定義、賦值、查詢和修改等操作,同時結合具體的程式碼範例進行說明。 1.布林類型的定義在MySQL中,可

在設計資料庫表時,選擇合適的資料類型對於效能最佳化和資料儲存效率非常重要。在MySQL資料庫中,儲存性別欄位的資料類型真是沒有所謂的最佳選擇,因為性別欄位一般只有兩個取值:男或女。但是為了效率和節省空間,我們可以選擇合適的資料類型來儲存性別欄位。在MySQL中,儲存性別欄位最常用的資料類型是枚舉類型。枚舉類型是一種能夠把欄位的值限定在一個有限的集合內的資料型別

標題:基本資料類型大揭密:了解主流程式語言中的分類正文:在各種程式語言中,資料類型是非常重要的概念,它定義了可以在程式中使用的不同類型的資料。對於程式設計師來說,了解主流程式語言中的基本資料類型是建立堅實程式基礎的第一步。目前,大多數主流程式語言都支援一些基本的資料類型,它們在語言之間可能有所差異,但主要概念是相似的。這些基本資料類型通常被分為幾個類別,包括整數

C語言是一種廣泛使用的電腦程式語言,具有高效、靈活和強大的特點。要熟練使用C語言進行編程,首先需要了解其基本語法和資料類型。本文將介紹C語言的基本語法和資料類型,並舉例說明。一、基本語法1.1註解在C語言中,可以使用註解來對程式碼進行說明,以便於理解和維護。註解可以分為單行註解和多行註解。 //這是單行註解/*這是多行註解*/1.2關鍵字C語

學習Python前需要掌握哪些基礎?隨著人工智慧、大數據和雲端運算等技術的不斷發展,程式設計已成為現代社會中越來越重要的技能。而Python作為一門簡潔易學且功能強大的程式語言,越來越受到廣大程式設計師和初學者的青睞。如果你也打算學習Python,那麼在開始之前有一些基礎知識是必須掌握的。理解程式設計的基本概念在開始學習任何程式語言之前,首先需要先理解一些基本的
