js数据类型检测及转换

js数据类型

js数据类型分为:值类型(基本数据类型)与引用类型(特殊数据类型)

值类型:(key,value都存储在栈中)。有:undefined 未定义,String 字符串,Number 数字,Boolean 布尔,Symbol 符号;
引用类型:栈中储存 内存地址,堆中储存 实际的值。有:Array 数组,Object 对象,null 空,Function 函数。

Symbol 是 ES6 引入了一种新的原始数据类型,表示独一无二的值。

声明变量类型

当您声明新变量时,可以使用关键词 “new” 来声明其类型:

var carname=new String;
var x=      new Number;
var y=      new Boolean;
var cars=   new Array;
var person= new Object;

基本类型

JavaScript 中共有 6 种基本数据类型:Undefined、Null、Boolean、Number、String、Symbol (new in ES 6) !

约定:基本数据类型与原始数据类型等意。

基本数据类型的值是按值访问的。

基本类型的值是不可变的

var str = "123hello321";
str.toUpperCase();     // 123HELLO321
console.log(str);      // 123hello321

基本类型的比较是它们的值的比较

var a = 1;
var b = true;
console.log(a == b);    // true
console.log(a === b);   // false

上面 a 和 b 的数据类型不同,但是也可以进行值的比较,这是因为在比较之前,自动进行了数据类型的 隐式转换。

  • == : 只进行值的比较

  • === : 不仅进行值得比较,还要进行数据类型的比较

基本类型的变量是存放在栈内存(Stack)里的

var a,b;
a = "yiyi";
b = a;
console.log(a);   // yiyi
console.log(b);   // yiyi
a = "呵呵";       // 改变 a 的值,并不影响 b 的值
console.log(a);   // 呵呵
console.log(b);   // yiyi

在这里插入图片描述

图解:栈内存中包括了变量的标识符和变量的值。

引用类型

除过上面的 6 种基本数据类型外,剩下的就是引用类型了,统称为 Object 类型。细分的话,有:Object 类型、Array 类型、Date 类型、RegExp 类型、Function 类型 等。

引用类型的值是按引用访问的。

引用类型的值是可变的

var obj = {
   name:"yiyi"};   // 创建一个对象
obj.name = "percy";       // 改变 name 属性的值
obj.age = 16;             // 添加 age 属性
obj.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值