数据类型

JavaScript 和 Java 一样,也是有基本数据类型的。但也是有区别的。

JavaScript中的数据类型

简单(基本、值)数据类型
  • number
  • string
  • boolean
  • undefined、null
复杂(引用)数据类型
  • Object、Array、Date 等
查看当前变量的数据类型
  • typeof name
  • typeof (name)

数值字面量

字面量

固定的值,让你从“字面上”理解含义

数值字面量

var age = 18; //数值字面量,18为字面量

number类型

十进制

十六进制

var num = 0xA

八进制

浮点数

var n = 5e-324;

浮点数值的最高精确度是17位小数,在进行算术计算时,其精确度远远不如整数。

var result = 0.1+0.2 //结果不是0.3 而是0.300000000000000004

0.1+0.2 == 0.3 //false
0.1+0.3 == 0.4 //true 0.07 * 100 ;7.00000000000000001

想比较的话只能 0.1 * 10 ,然后 parseInt 转换,然后再相加比较。

永远不要测试某个特定的浮点数值是否相等。

数值范围

内存限制,ES无法保存世界上所有的数值

  • 最小值:Number.MIN_VALUE,5e-324
  • 最大值:Number.MAX_VALUE,1.7976931348623157e+308
  • 无穷大:Infinity
  • 无穷小:-Infinity

数值检测

NaN: not a number. 非数值

isNaN(); //是数字返回false;

console.log(parseInt("abc"));//NaN

console.log(parseInt("abc"/10));//NaN

var num = prompt("请输入一个数字")
if(isNaN(num)){
console.log("不是一个数字");
}else{
console.log("是一个数字"); }

String 类型

字符串字面量

 var name = "zhangsan"; // "zhangsan"是字面量

字符串用引号引起,单引号和双引号是一样的。

获取字符的长度用length

var name="hukj"; alert(name.length); //4

转移符

console.log("\"Ancona\"");

\n 换行

\t 制表符

\b 空格

\r 回车

\f 进纸

\ 斜杠

' 单引号

" 双引号

字符串的不可变

var str ="hello";
str = str+"world";
console.log(str);

当执行第二行代码时,会在内存空间中开辟新的栈,然后通过垃圾回收机制来清理原来的str。这就是所谓的字符串不可变。

字符串拼接

var a ='100';
var b =100; //b中的 number:100 会自动转型为str
console.log(a+b); //100100
console.log(a-b); //0

Boolean 类型

Boolean 类型有两个字面量:true 和 false;

var result = Boolean("a");

console.log(result); //true

Boolean 当为空字符串,0,NaN,null,undefined 时,为false;

Undefined 类型

undefined 是 Undefined 的字面量;表示变量未赋值。

var message;
console.log(message);// undefined var a; //undefined
if(a){ //false
alert('有值')
}else{
alert('无值') //显示
}

a未赋值为undefined,undefined在Boolean中转换为false;

javascript_03-数据类型的更多相关文章

  1. JavaScript 中的数据类型

    Javascript中的数据类型有以下几种情况: 基本类型:string,number,boolean 特殊类型:undefined,null 引用类型:Object,Function,Date,Ar ...

  2. JS 判断数据类型的三种方法

    说到数据类型,我们先理一下JavaScript中常见的几种数据类型: 基本类型:string,number,boolean 特殊类型:undefined,null 引用类型:Object,Functi ...

  3. Python高手之路【二】python基本数据类型

    一:数字 int int(整型): 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位系统上,整数的位数为64位,取值 ...

  4. UniqueIdentifier 数据类型 和 GUID 生成函数

    UniqueIdentifier 数据类型用于存储GUID的值,占用16Byte. SQL Server将UniqueIdentifier存储为16字节的二进制数值,Binary(16),按照特定的格 ...

  5. SQL Server常见数据类型介绍

    数据表是由多个列组成,创建表时必须明确每个列的数据类型,以下列举SQL Server常见数据类型的使用规则,方便查阅. 1.整数类型 int 存储范围是-2,147,483,648到2,147,483 ...

  6. 由js apply与call方法想到的js数据类型(原始类型和引用类型)

    原文地址:由js apply与call方法想到的js数据类型(原始类型和引用类型) js的call方法与apply方法的区别在于第二个参数的不同,他们都有2个参数,第一个为对象(即需要用对象a继承b, ...

  7. python 数据类型 ----字典

    字典由一对key:value 组成的 python中常用且重量级的数据类型 1. key , keys, values 字典由一对key:value 组成的 python中常用且重量级的数据类型 1. ...

  8. SQL数据类型

    1.Character 字符串: 数据类型 描述 存储 char(n) 固定长度的字符串.最多8,000个字符. n varchar(n) 可变长度的字符串.最多8,000个字符.   varchar ...

  9. 跟着老男孩教育学Python开发【第二篇】:Python基本数据类型

    运算符 设定:a=10,b=20 . 算数运算 2.比较运算 3.赋值运算 4.逻辑运算 5.成员运算 基本数据类型 1.数字 int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**3 ...

  10. 我的MYSQL学习心得(二) 数据类型宽度

    我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...

随机推荐

  1. git clone 使用用户名和密码

    git clone http://邮箱(或用户名):密码@仓库 示例: 邮箱 xw@qq.com 密码: xw 仓库: http://git.test.com/abc/demo 注意: 邮箱中的 @ ...

  2. k8s记录-flanneld+docker网络部署(四)

    1)程序准备tar xvf flannel-v0.10.0-linux-amd64.tar.gz mkdir -p /data/projects/common/kubernetes/{bin,cfg, ...

  3. python 中删除文件中的空白行(回车)

    staff.txt 内容: Alex Li,Engineer,1363432345,alex@126.com Jack Zhang,Salesman,Sales Dep,15697892356,jac ...

  4. 使用idea创建简单的webservice服务

     New project: 生成HelloWorld.wsdl: 配置好tomcat后还需要加入 Axis 的库: 启动后,访问http://localhost:8080/services: 点击He ...

  5. 正则表达式入门教程&&经典Javascript正则表达式

    前言 例子: ^.+@.+\\..+$ 这样的代码曾经多次把我自己给吓退过.可能很多人也是被这样的代码给吓跑的吧.继续阅读本文将让你也可以自由应用这样的代码. 正文 教程:正则表达式30分钟入门教程 ...

  6. Data - 数据思维 - 中篇

    6 - 模型与框架 利用现有的成熟的理论.模型与框架,结合实际业务情况,搭建分析框架,尽量确保数据分析维度的完整性,结果的有效性及正确性. 营销理论模型:4P.用户使用行为.STP理论.SWOT等. ...

  7. spaces的坑

    spacemacs的坑,改镜像源,不能使用退格 emacs25以上可以装spacemacs 目前在mac上装emacs26.1 使用spacemacs的时候会有melpa.org访问慢或者访问不了的问 ...

  8. Error: python-devel conflicts with python-2.7.5-68.el7.x86_64

    yum install yum-utils -y package-cleanup --cleandupes yum -y install python-devel yum -y install pyt ...

  9. [CF1209F]Koala and Notebook_堆优化dij

    Koala and Notebook 题目链接:https://codeforces.com/contest/1209/problem/F 数据范围:略. 题解: 开始的时候看错题了....莫名其妙多 ...

  10. 守护进程daemon

    # -*- coding: utf-8 -*- import sys, os, time, atexit from signal import SIGTERM class Daemon: def __ ...