javascript 中的数据类型 详解

js是一种弱类型语言,数据类型主要分两种,原始值:存放在栈中的简单数据段,也就是说,他们直接存储在变量访问的位置;引用值:存放在堆中的对象,就是说,存储在变量处的值是一个指针,指向存储对象的内存处,为对象赋值时,js的解释程序会判断该值的原始类型的,还是引用类型的,元素类型 Undefined ,Null ,Bollean ,String ,由于这些原始类型占据的空间是固定的,所以可以将它们存储在教学的内存区域 栈中,如果一个值是引用类型,那么它的存储空间将分配在堆中,由于引用值的大小会变,所以不能存放在栈中,否则会降低变量的查询速度,相反,放在变量的栈空间中的值是该对象存储在堆中的地址,地址大小是固定的,所以他存放在栈中不会影响。

  原始类型 :有Undefined Null Boolean Number String 这五种, 可以用一个运算符typeof来判断一个值的类型,

var stemp = "test string";
alert(typeof stemp);// outputs "string"
alert(typeof 95);//outputs "number;
//引用类型或null 将返回 object  null 将被看作对象占位符,

 Undefined类型:

此类型只是一个值,当声明的变量未初始化时,该变量的默认值是Undefined;

var otemp;

alert (otemp == undefined);//outputs true;

注意 值undefined并不同于为定义的值,但是typeof运算符并不真正区分这两种值,

var oTemp;
alert (typeof oTemp);//outputs 'undefined'
alert (typeof otemp2);//outputs 'undefined' 确定otemp2没有定义
//warning otemp2 只能用于typeof 其他将报错,
alert(otemp1 == undefined); //causes error
function test(){
}
alert(test()== undefined);//outputs 'true'当函数没有返回值时,也返回此值,

 Null类型:

 null是一个专有值,即字面量,值undefined实际上是从null派生来的,因此

alert(null == undefinde);//outputs 'true';

尽管两个值相等,但他们的含义不同,undefined是声明了变量但未对其初始化赋值,null则用于表示尚未存在对象,如果函数或方法要返回的是对象,那么找不到该对象时,返回的通常是null;

String类型;

 独特之处是他没有固定的大小,字符串从0开始

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值