300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > JavaScript数据类型基本数据类型与引用数据类型的区别

JavaScript数据类型基本数据类型与引用数据类型的区别

时间:2022-01-14 01:45:56

相关推荐

JavaScript数据类型基本数据类型与引用数据类型的区别

JavaScript数据类型

1.JavaScript判断数据类型

typeof操作符

使用typeof操作符可以返回变量的数据类型

typeof操作符有带括号和不带括号两种用法

typeof (变量名)typeof 变量名

typeof的值有:1.number 2.string 3.BOOlean 4.null 5.undefined 6.Symbol 7.Array 8.Object function

2.基本数据类型

1.number 2.string 3.BOOlean 4.null 5.undefined 6.Symbol

1.数字型 typeof=‘number’

var num=1console.log(typeof num) //number

2.字符串类型 typeof=‘string’

var str='我是小白'console.log(typeof str) //string

3.布尔型 typeof=‘Boolean’ 布尔型有两个值 true/false

var flag1=truevar flag2=falseconsole.log(typeof flag1)//trueconsole.log(typeof flag2)//false

4.Null 类型

表示一个 ‘空’ 值 不存在任何值 用来定义空对象指针

使用typeof操作符查看Null的类型为Object,说明Null其实是属于Object的一个特殊值,所有将变量赋值为Null我们可以创建一个空的对象

var n=nullconsole.log(typeof null) //Objectn是一个空对象

5.undefined类型

undefined类型也是一个只有一个值的特殊数据类型 表示未定义 就是我们声明了一个变量未给它赋任何值,这个变量的默认值就是undefined

var strconsole.log(str) //输出undefined

使用typeof操作符查看声明未赋值和未声明的变量时 返回的值都是undefined

var a;console.log(typeof a); //undefinedconsole.log(typeof b);//undefined

但使用声明未赋值和未声明的变量时 声明未赋值的变量值为undefined 使用未声明的变量时会报错

var a;console.log( a); //undefinedconsole.log( b);//报错 b is not defined b未定义

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-TlJfqmP4-1668586067735)(C:/Users/pc/AppData/Roaming/Typora/typora-user-images/image-1116135010922.png)]

6.symbol类型

symbol是Es6中引入的一种新的数据类型 表示独一无二的值,symbol类型的值需要用Symbol()函数生成常用来模拟对象的私有属性和方法

var str='我是小白'var sym1=Symbol(str)var sym2=Symbol(str)console.log(sym1)console.log(sym2)console.log(sym1==sym2) //false//虽然sym1 sym2 看起来一样,实际他们不一样 Symbol的特点是每个值都是独一无二的值

使用Symbol定义的数据 自己和自己相等

var str='我是小白'var sym1=Symbol(str)console.log(sym1==sym1) //true

2.引用类型

7.Array 8.Object function

7.Array数组类型

Array(数组)是一组按顺序排列的数据的集合,数组的每一个值都称为元素,并且数组里可以包含的值是任意类型的数据,定义数组是使用[],数组中的每一个值用逗号分隔

var arr=[1,'我是个小白',true,null]console.log(arr) //[1,'我是个小白',true,null]

数组中的元素可以通过索引来访问,索引从0开始依次累加

var arr=[1,'我是个小白',true,null]console.log(arr[0]) //1 console.log(arr[1])//我是个小白

8.Object类型

Object(对象)类型数据是一组由键,值组成的无序的数据集合,定义对象类型的数据需要使用{} 或者使用Object函数

var obj={key:value}var person={name:'小白',age:18,height:180}//name,age,height为person对象中的键 小白,18,180 为person对象的值

获取对象的某个值 对象名.key

console.log(person.name);

获取对象的所有属性名 Object.keys(对象名)

console.log(Object.keys(person));

获取对象的所有属性值 Object.values(对象名)

console.log(Object.values(person));

遍历获取对象的属性名和属性值

for(var key in person){console.log(key);console.log(person[key]);}

9.function类型

函数是是一个特定功能的代码块 函数可以被事件调动 也可以被JavaScript直接调用

声明函数语法:

function 函数名(形参){console.log(形参)}//使用函数 传入实参函数名(实参)

function sayhi(name){return 'hi'+name}var res=sayhi('小白')concole.log(res) //hi小白

3.基本数据类型与引用数据类型的区别

基本数据类型

基本数据类型的值直接存储在栈内存中

值与值之间是独立的 ,修改一个变量不会影响其他变量

var a=1;var b=a;a++;console.log(a,b) //2 1

引用数据类型

引用数据类型是存储在堆内存中的对象

变量其实是保存在栈内存中的一个引用指针(保存的引用指针是堆内存中的引用地址标识)通过这个引用指针可以快速找到保存在堆内存的对象

var a={name:'小白',age:'18'}var b=ab.age='20'console.log(a) //{name:'小白',age:'20'}

把a赋值给b,等于a的内存指针就指向b,现在a和b指向的是同一个引用指针,所以改变b的age也就相当改变了a的age

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。