天天看点

js的数据类型和变量:

js的数据类型:

  1. js的数据类型:
    1.  检测数据类型用typeof 具体语法是typeof 被检查的类型 返回的是某个字符串;
    例如: var a = "dasf"; var b = 234; var c = true; var d = null; var e = undefined; console.log(typeof a); //string console.log(typeof b); //number console.log(typeof c); //boolean console.log(typeof d); //object  null被认为是一个空的对象引用;所以返回object; console.log(typeof e); //undefined   如果这个值未定义返回undefined;可以是声明了变量但是没有给值;
    1. 基本数据类型:有5中数据类型;

    a)number数字         表示正数和浮点数;      保存浮点数的内存空间是保存正数的两倍;      最小数值保存在 Number_MIN.VALUE; 最大数值保存在 Number_MAX.VALUE;      如果某次计算结果超出了最大和最小范围表示为:Infinity  -Infinity 确定一个值是不是有穷的可以用isInfinity(); 如果值位于最小值和最大值之间会返回true; NaN not a number,即非数值;有两个特点:1.任何涉及NaN的操作都返回NaN;2.NaN与任何值都不想等,包括NaN本身;针对这两个特点定义了isNaN()函数;isNaN()接受一个一个值之后会尝试将这个值换换为数值,转换后是数值返回false,不是数值返回true;NaN  not a number  isNaN()判断是不是一个有效数字; Number()是一个方法,会将有效数字的字符串合理转化为数字; 当我们的字符串包含的不是一个有效数字的时候我们得到的转化结果就是NaN; parseFloat从字符串最左边解析有效数字,当解析发现非有效数字的时候,我们就停止解析,能识别小数点所以能解析小数;转化字符串并且解析小数,所以处理小数常用这个; parseInt能解析字符串,但是不能解析到小数点后边,所以处理正数常用这个;

    b)string字符串(有单引号或者双引号组成); 字符串中的长度可以用length访问; 如:var a = “jkfadsk” console.log(a.length)  c)boolean布尔(有true/false两个值):   boolean:有两个值:true 真 对的   false 假 错的; 布尔的应用场景:判断js数据在操作中的真假;(这个判断是相对于编程语言来说的,相对计算机来说的); 是使用最多的一种类型;并且区分大小写; 单个数据的判断:有5个数据,转换成布尔值是false(“”、0、NaN、null、undefined),除这5个以外转换成布尔值都是true; Boolean(要转换的数据)  将数据转换成布尔值; 布尔在判断语句中非常重要; d)null(空):是一个空对象指针,所以用typeof 检测类型时会出现object;    用法是:如果定义一个变量,以后会用它保存对象,最好将该变量初始化为null; e)underfined:声明了变量但是为初始化值,也就是没有定义值的时候返回的值;  var message; console. log( message); //undefined

    var  message; alert(message == undefined)  //返回true; 因为message未定义返回undefined; 但是: var  message;

    alert( typeof  message);

    alert(age)  //因为age未定义所以会报错; alert(typeof age)   //但是会返回undefined; alert(age == message)//会报错

    alert( typeof age ==  typeof  message)  //返回true

  2. 引用数据类型(对象数据类型):数组Array   function Object  Date  正则RegExp等;在js中数据、变量、事物都可以看做对象;一切事物皆对象;