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. android onResultActivity不执行原因总结

    插一个注意点.在用ArrayAdapter的时候数据那里的类型必须是List<String> 不能是ArrayList<String> 1.在A.Activity中调用star ...

  2. MVC c# 调用sql的存储过程

    var hid = new SqlParameter { ParameterName = "HistoryId", Value = history.Id, Direction = ...

  3. Visual Studio 2015 开发 ASP.NET 5

    在以往微软发布或更新 Visual Studio 版本时,我们开发 ASP.NET 应用程序,带给我们的变化其实并不是很大,或者说你根本就感受不到变化,你感受到的只是下载安装了几个 G 的 Updat ...

  4. sqlServer sa用户登陆失败的解决办法

    sqlserver sa用户登陆失败的解决办法 如下图以此模仿: 1.右键-属性 2.找到安全: 3.勾选如图: 4.sa用户密码重置: 5.服务重启:

  5. Atcoder Beginner Contest 121D(异或公式)

    #include<bits/stdc++.h>using namespace std;int main(){    long long a,b;    cin>>a>&g ...

  6. golang文件处理函数openfile与linux系统的文件函数的耦合

    golang运行最理想的环境是linux系统中,编译速度和执行速度都比较快,本文是关于golang中的文件操作函数 在golang标准库中os包提供了不依赖平台的借口,但是使用的风格是unix风格的. ...

  7. Flink学习笔记:Connectors概述

    本文为<Flink大数据项目实战>学习笔记,想通过视频系统学习Flink这个最火爆的大数据计算框架的同学,推荐学习课程: Flink大数据项目实战:http://t.cn/EJtKhaz ...

  8. 字符串变dict

    1.eval 2.json # NameError: name # 'null' is not defined # i_dict=eval(i) 这种方式,如果dict字符串中有null ,将不能变成 ...

  9. springboot整合mybatis,redis,代码(一)

    一 搭建项目,代码工程结构 使用idea或者sts构建springboot项目 二  数据库sql语句 SQLyog Ultimate v12.08 (64 bit) MySQL - 5.7.14-l ...

  10. Exadata 18.1新特性--云平台存储节点升级

    1.传统方式的存储节点升级流程: (1).将存储节点升级包下载到数据库服务器,通常是DB01上. (2).解压缩存储节点升级包. (3).用升级包中的patchmgr工具滚动或非滚动地升级每个存储节点 ...