美文网首页
你所不知道的JS数据类型

你所不知道的JS数据类型

作者: 元气满满321 | 来源:发表于2017-03-08 15:57 被阅读85次

今天介绍的是JS的数据类型,希望下次突然有人问说说JS的数据类型时,可以给他一个肯定的回答。

五种基本类型:
Undefined
Null
Boolean
Number
String

一种引用类型:
Object


五种基本类型###

1.Undefined

  • 使用var声明的变量但没有对其初始化,则该变量的值就是undefined
  • 根本没有声明变量也没有初始化变量, 则该变量的值就是undefined
    例如:
var message;
console.log("已声明但没有初始化变量message的类型:" + message);
console.log("根本没有声明变量也没有初始化变量age的类型:" + age);
控制台结果

2.Null

  • null 值表示一个空指针对象,也就是当用typeof 操作符检测 null 时会返回 object
var student = null;
alert(typeof student);  //object
  • 如果定义的变量准备存对象,那么最好初始化为null,这样我们可以判断变量是不是为null,来知道变量是否保存了一个对象的引用:
if(student != null){
    //对 student 做某些操作
}

3.Boolean####

  • 该类型有两个值,分别是:true 和 false
  • 虽然Boolean类型只有两个值,但ECMASript中所有类型的值都可以通过转型函数 Boolean() 将原来的值转换成与其对应的Boolean值。
var message = "Hello";
var messageAsBoolean = Boolean(message);
alert(messageAsBoolean);     //true     

转换规则:

转换规则

4.Number####

  • 该类型的表示方法有两种形式,第一种是整数,第二种为浮点数。
  • 整数 可以通过十进制,八进制,十六进制的字面值来表示。
var intNum=55;//十进制
var octalNum=070;//八进制数,第一位必须是0,解析为56
var  octalNum=079;//无效的8进制数,9超过了8进制数的范围,解析为79
var hexNum=0xA;//十六进制数,前两位必须是0x,后跟16进制数字(0~9及A~F)
  • 浮点数
    1、该数值中必须包含一个小数点,且小数点后必须有一位数字,如果小数点后只有零,则该小数会被转化为整数。
    2、浮点数所占据的内存空间是整数的两倍。
    3、对极大极小的浮点数采用e表示法。
 var floatNum=3.2e7;//3.2×10(7次幂)
 var floatNum=3.2e-7;//3.2×10(-7次幂)
  • NaN:即非数值(Not a Number)
    1、 这个数值用于表示一个本来要返回数值的操作数,未返回数值的情况。比如任何数值除以0,本是不符合规范的,js里,这样的操作返回NaN
    2、NaN有两个不同寻常的特点:任何涉及NaN的操作都会返回NaN,NaN值与任何值都不相等,包括本身。
    3、isNaN()函数,这个函数可以判断,传递的参数是否“不是数值”这里涉及数值转换的问题,例如“10”这个字符串就可以转换为10,但是“blue”这个字符串则无法转换为数字,所以isNaN("blue")==true
  • 数值转换
    有三个函数可以把非数值转换为数值:Number(),parseInt(),parseFloat()。第一个可以用于任何数据类型,后两个,则专门用于把字符串转化为数值。

5.String

  • 用来表示字符串,要么用双引号要么用单引号,下面的写法都是有效的
var firstName = 'juan';
var lastName  = "yu";
  • toString()函数,每个值都有,但是null与undefined没有。一般情况下使用这个函数时,没有必要传递参数,但是调用数值的 toString()方法时,可以传递基数,默认传递的是10,代表十进制。
  • String()函数可以将任何类型的值转换为字符串,包括null转换为'null'、undefined转换为'undefined',也就是返回了这两个值的字面量。

一种引用类型:Object

  • 对象是一组数据和功能的集合
  • 创建对象的有两种方法:
    1.字面量表示法,我习惯这种创建方法
var object = {};

2.new()方法

var object = new Object();
  • 对象被写在一对花括号里。在括号内部,对象的属性name : value的形式来定义。属性由逗号分隔:
var person={firstname:"John", lastname:"Doe", id:5566};

有两种获取属性的方法

name=person.lastname;//比较常用
name=person["lastname"];

好了,继续加油!

每天都努力一点
谢谢你看完


相关文章

  • 你所不知道的JS数据类型

    今天介绍的是JS的数据类型,希望下次突然有人问说说JS的数据类型时,可以给他一个肯定的回答。 五种基本类型:Und...

  • JS的类型转换

    JS的数据类型: 首先, JS的数据类型分为基本数据类型和引用数据类型基本数据类型: string number ...

  • ES6时代,你真的会克隆对象吗?

    原文:你真的会克隆对象吗 开始之前 在开始聊克隆之前,我们还是先来看看js数据类型。js的数据类型分为基本数据类型...

  • js入门知识点

    * 基础知识 * js的输出方式 * js的组成 * js的命名规范 * 数据类型 * number数据类型 * ...

  • js数据类型

    JS基本数据类型和引用数据类型(JS 基本数据类型和引用数据类型的区别及浅拷贝和深拷贝) 再讲 js 的基本数据类...

  • 2022前端面试题汇总(附答案)更新中

    JS相关 1.JS中的数据类型 (1)数据类型分为基本数据类型和引用数据类型基本数据类型:number、null、...

  • js深拷贝

    在写深拷贝之前,有必要说一下js的数据类型 一.js数据类型 1.1 分类 js数据类型分为两类:原始数据类型、引...

  • JS数据类型判断

    js中可以通过typeof来判断基本的数据类型。 数据类型 js的数据类型分为基本数据类型和引用数据类型,基本数据...

  • js对象数组的深拷贝方法以及其他方法

    js判断数据类型是否为对象 js判断数据类型是否为数组

  • JS 高频面试题汇总

    # 说一下JS 中的数据类型有哪些 JS 数据类型包括 基本 / 引用 / 特殊 数据类型: 基本数据类型:Str...

网友评论

      本文标题:你所不知道的JS数据类型

      本文链接:https://www.haomeiwen.com/subject/dnmegttx.html