摘要:基本類型數字類型此類型表示整型和浮點型數字,還有一種比較特殊的。表示一個本來要返回數值的操作數而未返回的情況特點任何參與的操作返回值都是。字符串可以由單引號或雙引號表示布爾類型該類型只有兩個值,一個是一個是。
1.基本類型
Number 數字類型
此類型表示整型和浮點型數字,還有一種比較特殊的NaN(not a number)。NaN表示一個本來要返回數值的操作數而未返回的情況
console.log(8%0); //NaN
NaN特點
1.任何NaN參與的操作返回值都是NaN。
2.任何值和NaN都不相等,甚至和其本身都不相等。
console.log(NaN==NaN); //false console.log(isNaN("antzone")); //true console.log(isNaN(3)); //false
String 字符串類型
此類型用于表示由零或多個16位Unicode字符組成的字符序列,即字符串。字符串可以由單引號(")或雙引號(")表示
varstr="antzone"; varstr="antzone"; console.log(str.length); //7
Boolean 布爾類型
該類型只有兩個值,一個是false一個是true。
a.javascript中的所有類型的值都可以轉換為布爾值,如果將一個值轉換為布爾值
varstr="antzone"; console.log(Boolean(str));
b.隱式轉換
varstr="antzone"; if(str){ console.log("螞蟻部落"); }
具體一個值被轉換為true還是false那要看值得數據類型和其實際值,轉換規則如下:
Null 空對象
此類型只有一個值,即undefined。
一個變量聲明但未賦值的時候,它的缺省值就是undefined。
varantzone; console.log(antzone);
Undefined 沒有定義類型
此類型和undefined類型一樣也只有一個值,即null。
null表示一個空對象,雖然它是Null類型,但是typeof返回值卻是object,但是并不說明它是一個對象,可以說這是javascript的一個小小的錯誤,或許以后就會被修復。
console.log(typeofnull);
*null和undefined相等性比較返回值為true。
console.log(null==undefined);
盡管undefined和null都表示空,但是它們的用法確實有很大不同的,undefined一般表示一個聲明未賦值、未聲明或者屬性不存在,而null一般針對對象而言的,表示一個對象不存在。變量聲明未賦值的時候沒有必要顯式賦值為undefined,但是如果一個變量是要準備存儲對象的,那么就推薦賦值為null。
2.復合數據類型
4.數組 array
5.Object 對象
Object是一個:無序的成員集合
它是一個集合,說明它包含0-n個成員。而它是無序的。
每一個成員由以下3個部分組成:名稱、值、特征集合
對象其實就是一組數據和功能的集合。對象可以通過執行new操作符后跟要創建的對象類型的名稱來創建。而創建Object類型的實例并為其添加屬性和(或)方法,就可以創建自定義對象。
varobj=newObject();
object類型中包括Object、Function、String、Number、Boolean、Array、Regexp、Date、 Globel、Math、Error,以及宿主環境提供的object類型。
3.特殊的數據類型
Null 空對象
Undefined 沒有定義類型
4.數據類型的轉換
1.轉換為字符串(toString)
vara=8; console.log(typeof(a+"")); //string var b=8; console.log(typeof(b.toString())) //string
2.轉換為數值類型(parseInt parseFloat Number)
vara="3.1415926"; console.log(typeof(parseInt(a))); //number 解析一個字符串并返回一個整數。 varb="3.1415926"; console.log(typeof(parseFloat(b))) //number 解析一個字符串并返回一個浮點數。 varc="3.1415926"; console.log(typeof(Number(c))) //number 把對象的值轉換為數字。
3.轉換為布爾類型(boolean)
在if語句、||、&&和!等邏輯判斷環境中會將表達式自動轉換為布爾類型。
也可以使用Boolean()函數進行轉換。
console.log(Boolean(1));
4.轉換為對象類型
ToObject:轉換成object型
5.轉換為原始類型
ToPrimitive:轉換成原始類型
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/79232.html
摘要:例子中,屬于基本類型對象。基本數據類型和引用類型作方法入參時的差異通常,在函數調用時,如果入參為基本數據類型時,函數的參數將以值傳遞的方式傳遞。 前言:再次翻閱JS高程(第3版)過程中,看到了基本包裝類型,趁熱留下此文,對JS的數據類型做個較為深入的小結(2018-10-19)。 雖然JS與其他強類型語言不一樣,聲明中無需預設數據類型,但是JS也是有數據類型區分的。 基本數據類型(...
摘要:前兩天看到大神的關于基本數據類型和引用類型的區別的文章覺得寫得非常不錯,就想著在其基礎上加上自己平時看到的一些知識點和理解,所以就有了以下的文章基本數據類型基本數據類型包括基本數據類型是按值訪問的,就是說我們可以操作保存在變量中的實際的值基 前兩天看到kraaas大神的關于基本數據類型和引用類型的區別的文章覺得寫得非常不錯,就想著在其基礎上加上自己平時看到的一些知識點和理解,所以就有了...
摘要:但是基本數據類型不是對象,不具備對象的特性不攜帶屬性沒有方法可調用。自動裝箱即直接賦值將會比使用構造方法的方式節省一塊堆內存空間,并自動入對象池。而手動裝箱使用構造方法會產生兩塊堆內存,而且不會保存在對象池中。 概念 java在設計之初,有一個基本原則:一切皆對象。但是基本數據類型不是對象,不具備對象的特性——不攜帶屬性、沒有方法可調用。為了解決此類問題,Java為每種基本數據類型分別...
摘要:作者陳大魚頭鏈接背景最近高級前端工程師劉小夕在上開了個每個工作日布一個前端相關題的,懷著學習的心態我也參與其中,以下為我的回答,如果有不對的地方,非常歡迎各位指出。 作者:陳大魚頭 github: KRISACHAN 鏈接:github.com/YvetteLau/S… 背景:最近高級前端工程師 劉小夕 在 github 上開了個每個工作日布一個前端相關題的 repo,懷著學習的心態我也參...
摘要:原文鏈接一個變量可以存放兩種類型的值,基本類型的值和引用類型的值。引入了一種新的原始數據類型,表示獨一無二的值。 原文鏈接 一個變量可以存放兩種類型的值,基本類型的值(primitive values)和引用類型的值(reference values)。 ES6 引入了一種新的原始數據類型 Symbol,表示獨一無二的值。它是 JavaScript 語言的第七種數據類型,前六種是:Un...
摘要:熟悉的同學都知道,它的數據類型一般分為基本數據類型和引用數據類型復雜數據類型。基本數據類型基本數據類型有種新增。動態的屬性基本數據類型的值是沒有辦法添加屬性和方法的。類型檢測根據它的原型鏈來識別引用類型。 熟悉js的同學都知道,它的數據類型一般分為基本數據類型和引用數據類型(復雜數據類型)。那么他們之間到底有什么不同?從下面這個例子入手: var a = 1; ...
閱讀 1765·2021-09-22 15:10
閱讀 1261·2021-09-07 09:58
閱讀 2333·2019-08-30 15:44
閱讀 1635·2019-08-26 18:29
閱讀 2033·2019-08-26 13:35
閱讀 759·2019-08-26 13:31
閱讀 720·2019-08-26 11:42
閱讀 1065·2019-08-23 18:39