码迷,mamicode.com
首页 > Web开发 > 详细

JS分两种数据类型,你都知道吗?

时间:2017-03-01 20:39:37      阅读:168      评论:0      收藏:0      [点我收藏+]

标签:变化   基本   基本数据类型   内存   对象   color   数组   关系   多少   

大牛请无视此篇!

JS主要分基本数据类型和引用数据类型,这两者区别可大了,此篇看完必有长进,下面进入正题

首先我们看下什么是基本数据类型(概念我就不说了,直接上代码):

var i = 10var x = 11var y = ‘lemon’
var z = ‘柠檬’

这些最基本的就是基本数据类型了,下面看下什么是引用数据类型:

var arr = [1,2,3,4,5];
var arr = [‘lemon1‘,‘lemon2‘,‘lemon3‘];
var obj = {
name:‘lemon‘,
age:‘18‘
}

像这些数组,对象都是引用数据类型。

下面我们来说下两者的区别吧

首先看两个简单的小测试:

//基本数据类型
var i = 1;
var n = i;
n = 10;
console.log(i);
//引用数据类型
var arr1 = [1,2,3,4,5];
var arr2 = arr1;
arr2[0] = 10;
console.log(arr1[0])

此时 i 是多少,arr1[0]又是多少?

想必很多人一眼就看出 i 多少了,不就是1么,没错,那arr[0],是多少呢?

此时arr1[0]就变成10了,这就是引用数据类型与基本数据类型的区别,下面我就用我最熟练的普通话来为大家简单讲解一下:

其实基本数据类型中i与n直接没有任何关系,当然,n改变不会影响到i;但是在引用数据类型中arr1只是指向数组或者是对象的,就是获取到这个数组(或对象)的在内存空间的地址,就像我们的门牌号差不多,当arr2 = arr1 的时候,也就是arr2也指向了这个数组,其中指向这个数组的任何一个变化,其内存空间中的值就会发生变化,当然,所有指向这个数组的也就都会发生变化咯!

学到东西记得点下关注哟!

JS分两种数据类型,你都知道吗?

标签:变化   基本   基本数据类型   内存   对象   color   数组   关系   多少   

原文地址:http://www.cnblogs.com/ningmeng666/p/6485897.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!