JavaScript中基本数据类型总结

JavaScript 拥有动态类型

JavaScript 的变量是松散的,是一种弱类型或者说动态语言。具体体现在变量在存储哪种数据类型方面没有规定。
例如:

 var foo = 42; // foo is a Number now 
 var foo = "bar"; // foo is a String now 
 var foo = true; // foo is a Boolean now
//在给一个变量赋予了某种数据类型之后,不建议更换数据类型(但是这样做是有效的)

JavaScript七种数据类型

在 JavaScript 规范中,共定义了七种数据类型,分为 “基本类型” 和 “引用类型” 两大类,如下所示:

  • 基本类型:String、Number、Boolean、Symbol、Undefined、Null
  • 引用类型:Object

1. 字符串String

  • 字符串的作用:用于表示文本数据。
  • 字符串的元素索引:字符中每个元素的位置用数字表示,第一位元素的序号是0,后面依次增加。字符串的长度就是它元素的个数。
  • 字符串的表现形式:使用单引号'**'或双引号"**"括起来,表示该值是一个字符串。
    例如:
var carname="Bill Gates";
var carname='Bill Gates';

可以在字符串中使用引号,只要不匹配包围字符串的引号即可:

var answer="Nice to meet you!";
var answer="He is called 'Bill'";
var answer='He is called "Bill"';
  • 获取一个字符串的子串可通过选择个别字母或者使用String.substr()
  • 两个字符串的连接使用连接操作符(+)或者String.concat()
    P.S.这两个大体明白是什么意思了,但是还没有理解怎么用。有待进一步探索。
  • 符号类型(Symbol):符号(Symbols)是ES6新定义的。符号类型是唯一的并且是不可修改的。

2. 数字Number

  • Number类型包含整数和浮点数(浮点数数值必须包含一个小数点,且小数点后面至少有一位数字)两种值
  • JavaScript 只有一种数字类型。数字可以带小数点,也可以不带:
var x1=34.00;      //使用小数点来写
var x2=34;         //不使用小数点来写

极大或极小的数字可以通过科学(指数)计数法来书写:

var y=123e5;      // 12300000
var z=123e-5;     // 0.00123

3. 布尔Boolean

布尔(逻辑)只能有两个值:true 或 false。布尔常用在条件测试中。

var x=true
var y=false

4. 符号Symbol

Symbol 是 ES6 新增的一种原始数据类型,它的字面意思是:符号、标记。代表独一无二的值 。

5. Undefined和Null

Undefined 这个值表示变量不含有值。
Null 类型只有一个值:null,表示空值,表示没有被呈现.
可以通过将变量的值设置为null来清空变量。

// 值:undefined
var car="Volvo"; //值:"Volvo"
var car=null; //值:null
cars=null; //清空cars
person=null; //清空person

6. 对象Object

  • javascript 中的对象(物体),和其它编程语言中的对象一样,可以比照现实生活中的对象(物体)来理解它。 javascript 中对象(物体)的概念可以比照着现实生活中实实在在的物体来理解。
  • 在javascript中,一个对象可以是一个单独的拥有属性和类型的实体。我们拿它和一个杯子做下类比。一个杯子是一个对象(物体),拥有属性。杯子有颜色,图案,重量,由什么材质构成等等。同样,javascript对象也有属性来定义它的特征。
  • 对象可以通过new操作符后跟要创建的对象类型的名称来创建。而创建Object类型的示例并为其添加属性和(或)方法,就可以创建自定义对象,如下所示:
var o = new Object();   

我们也可以通过下面的方式直接创建一个对象:

 var person = { name: 'Bob', age: 20, gender: 'male' };

上述对象就定义了一个名为’Bob‘,20岁,的男生。

typeof操作符

由于JavaScript是松散类型的,因此需要有一种手段来检测给定变量的数据类型——typeof就是负责提供这方面信息的操作符。对一个值使用typeof操作符可能返回下列某个字符串:

    'undefined' —— 未定义 
    'boolean' —— 布尔值 
    'string' —— 字符串 
    'number' —— 数字值 
    'object' —— 对象或null 
    function —— 函数 

下面展示一下使用typeof的示例:

    var message = 'some string'; 
    alert(typeof message); // "string" 
    alert(typeof(message)); // "string" 
    alert(typeof 95); // number

在实际编程的过程中,可以用typeof判断任何一个变量的数据类型。

数组Array

数组下标是基于零的,所以第一个项目是 [0],第二个是 [1],以此类推。
下面的代码创建名为 cars 的数组:

var cars=new Array();
cars[0]="Audi";
cars[1]="BMW";
cars[2]="Volvo";

或者 (condensed array):

var cars=new Array("Audi","BMW","Volvo");

或者 (literal array):

var cars=["Audi","BMW","Volvo"];

声明变量类型

当您声明新变量时,可以使用关键词 "new" 来声明其类型:

var carname=new String;
var x=      new Number;
var y=      new Boolean;
var cars=   new Array;
var person= new Object;

JavaScript 变量均为对象。当您声明一个变量时,就创建了一个新的对象。

全文参考:思特沃克教程,JavaScript数据类型
拓展阅读:浅谈 javascript 六种数据类型以及特殊注意点浅谈 javascript 的数据类型检测

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,293评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,604评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,958评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,729评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,719评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,630评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,000评论 3 397
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,665评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,909评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,646评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,726评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,400评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,986评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,959评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,197评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,996评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,481评论 2 342

推荐阅读更多精彩内容