JavaScript中的数据类型分为两种,一种是简单数据类型,包括Undefined、Null、Boolean、Number和String,另一种是复杂数据类型,即Object,也可称作为引用类型。

本篇主要介绍常见的引用类型以及对应的操作。

Object类型

Object类型是JavaScript中最常见的数据类型了。它表示一系列的属性和值的集合。

我们可以这样创建一个Object:

var obj = new Object();

更常用的方式是这样:

var obj = {a: "a"};

Array类型

数组类型也是非常常用的一种数据类型,与其他语言不同的是,JavaScript中的数组的每一项都可以保存任意类型的值。而且,JavaScript数组的大小是可以动态调整的,随着数据的添加而自动增长。

下面是JavaScript数组的常用操作汇总。

Date类型

Date类型是基于Java语言的Date类构建的,使用自UTC时间1970年1月1日零时开始经过的毫秒数来保存日期。

下面是JavaScript日期类型的常用操作汇总。

RegExp类型

我们在日常开发过程中经常要用到正则表达式,JavaScript通过RegExp类型来支持正则表达式。

常见正则表达式通常有一下两种方式:

var expression = / pattern / flags

其中的模式(pattern)可以应用任何简单或复杂的正则表达式(参考正则表达式30分钟入门教程),可以包含字符类、限定符、分组、向前查找以及反向引用。每个正则表达式可以带有一个或多个标识(flags),用以标明正则表达式的行为。正则表达式的模式匹配支持下面三种标识:

  • g: 表示全局(global )模式,即模式将被应用于所有字符串,而非在发现第一个匹配项时立即停止
  • i:表示不区分大小写(case-insensitive )模式,即在确定匹配项时忽略模式与字符串的大小写
  • m:表示多行(multiline )模式,即在到达一行文本末尾时还会继续查找下一行中是否存在与模式匹配的项。

另一种创建正则表达式的方式是通过构造函数:

var pattern2 = new RegExp("[bc]at", "i");

传递给构造函数的都是字符串,所以如果正则表达式字符串中包含元字符,则需要进行双重转义。比如\在字符串中通常为\\,但是在正则表达式字符串中,要转移成\\\\

通常我们在使用正则表达式的时候,会使用到如下两种方法:

  • exec() 该函数接受一个字符串参数作为应用模式的字符串。返回包含第一个匹配信息的数组,或者在没有匹配的情况下返回null。
  • test() 该函数接受一个字符串参数,在模式与该参数匹配的情况下返回true,否则返回false。

String类型

String类型是字符串的对象包装类型。

var strObj = new String("This is a String Object.");

以下是常见的字符串操作:

小结

除了上面介绍的几种数据类型外,还有Number、Boolean这样的对象包装类型,Math这样的单体内置对象,由于使用频率相对较低一点,且使用方法都较为简单,所以不在此处一一罗列,需要使用的时候,参考一下工具书就可以了。

本篇有意避开了Function函数类型没有说,并不是函数类型不重要,相反,函数是JavaScript中的一等公民。之所以没有说,一是受篇幅限制,二是函数确实有太多的细节需要注意,所以后面会有一篇单独介绍JavaScript中的函数,以及作用域、闭包等概念。

(Frontend Newbie)JavaScript基础之常见数据类型的更多相关文章

  1. JavaScript 基础 (变量声明, 数据类型, 控制语句)

    创建: 2017/09/16 更新: 2017/09/24 更改标题 [JavaScript 概要]-> [JavaScript 基础] 完成: 2017/09/25 更新: 2017/10/0 ...

  2. JavaScript 基础类型,数据类型

    1.基础类型:undefined,null,Boolean,Number,String,Symbol Undefined类型:一个没有被赋值的变量会有个默认值undefined; Null类型:nul ...

  3. JavaScript基础知识:数据类型,运算符,流程控制,语法,函数。

    JavaScript概述 ECMAScript和JavaScript的关系 1996年11月,JavaScript的创造者--Netscape公司,决定将JavaScript提交给国际标准化组织ECM ...

  4. javascript基础知识2#数据类型

    数据类型 typeof 操作符 undefined类型 boolean类型 Nubmer类型 NaN(not a number) 数值转换parseInt,parseFloat String类型 字符 ...

  5. JavaScript基础知识(数据类型)

    数据类型 布尔:true/fasle console.log(typeof true);// "boolean" Number : true -->1 false --> ...

  6. javaScript基础篇之数据类型

    我主要学习廖雪峰老师官方网站的javaScript,所以很多都是出自于廖老师,请见谅.以下是廖老师的官方网站的地址:http://www.liaoxuefeng.com/wiki/0014344466 ...

  7. JavaScript 基础知识梳理——数据类型

    JavaScript的数据类型公有六种,ES6又新增了第七种Symbol类型的值. 数值(number) 字符串(string) 布尔值(boolean) undefined null 对象(obje ...

  8. JavaScript基础知识(数据类型及转换、运算符)

    9.数据类型 概念:表示当前存储的数据的分类(表示数字 - 整数和小数) u  原始类型(原始值) -----[typeof运算符:判断变量的原始类型] *number(数字):表示数字        ...

  9. javascript基础2 判断 数据类型

    js中的数据类型: ------------------------------------------------------------------------------- 返回undefine ...

随机推荐

  1. (转)Linux环境进程间通信系列(五):共享内存

    原文地址:http://www.cppblog.com/mydriverc/articles/29741.html 共享内存可以说是最有用的进程间通信方式,也是最快的 IPC 形式.两个不同进程 A ...

  2. HttpWebRequest post上传文件

    public static string HttpUploadFile(string url, string path) { // 设置参数 HttpWebRequest request = WebR ...

  3. GetPixelAddress()函数Alpha通道会丢失

    CImage类中GetPixelAddress()函数来设置获取对应的颜色值是发现Alpha无效. void CGBImage::Load(){ CImage sourceImage; sourceI ...

  4. java处理中国气象数据,提取汇总陕西地区24小时各观测点的数据(csv格式)

    1.先贴一下气象数据的csv源格式,由于数据内容较多,就放一部分(china_sites_20150102.csv) date,hour,type,1001A,1002A,1003A,1004A,10 ...

  5. react.js学习之路一

    今天新老大来了,我们要学习他使用的框架react.js,现在是两眼一抹黑,对于我这个前端菜鸟来说,是真正的重新开始,好了,不说那么多了,开始随便记录我的学习,之后再整理内容. (1)对于react来说 ...

  6. C# Winform下一个热插拔的MIS/MRP/ERP框架11(启航)

    初学时,有了想法却完全不知道该从何下指,此序列将抛砖引玉,与大家共同学习进步. 一个程序的初始,必然是启动. 我的要求: 1.应用程序保持单例: 2.从配置文件加载一些基础数据进行初始化: 3.显示软 ...

  7. FastDFS分布式⽂文件系统

    FastDFS分布式⽂文件系统  1. 什么是FastDFS FastDFS 是⽤用 c 语⾔言编写的⼀一款开源的分布式⽂文件系统.FastDFS 为互联⽹网量量身定制, 充分考虑了了冗余备份.负载均 ...

  8. 【BZOJ2839】集合计数 容斥原理+组合数

    Description 一个有N个元素的集合有2^N个不同子集(包含空集),现在要在这2^N个集合中取出若干集合(至少一个),使得 它们的交集的元素个数为K,求取法的方案数,答案模1000000007 ...

  9. 洛谷P4495 [HAOI2018]奇怪的背包(数论)

    题面 传送门 题解 好神仙的思路啊--orzyyb 因为不限次数,所以一个体积为\(V_i\)的物品可以表示出所有重量为\(\gcd(V_i,P)\)的倍数的物品,而所有物品的总和就是这些所有的\(\ ...

  10. vmware vSphere虚拟网络之标准交换机(二)

    一.标准交换机的特点: 1)只能用于物理主机 2)其他主机不能共享同一个虚拟交换机 3)不具备任何灵活性 4)每台ESXi主机都要配置一遍 二.网络图: 三.创建标准交换机: 登录web vCente ...