再谈Javascript中的基本类型和引用类型(推荐)


Posted in Javascript onJuly 01, 2016

一、基本类型和引用类型概述

js中数据类型的值包括:基本类型值和引用类型值

基本数据类型:undefined;null;boolean;number;string

引用类型值:保存在内存中,js不允许直接访问内存位置,因此时操作引用而不是实际对象

二、如何检测数据类型

1.基本数据类型的检测:使用typeof

var s = “AAA”; 
alert(typeof s); //返回string

2.引用类型(对象类型)检测:使用instanceof

alert(person instanceof Object); 
alert(person instanceof Array); 
alert(person instanceof Regexp);

3.特殊情况:instanceof检测object始终返回true,检测基本类型的时候始终返回false(因为基本类型不是对象)

typeof检测函数时返回Function,检测正则表达式时返回Object

三、基本类型和引用类型的区别

1.引用类型可以添加属性,基本类型不可以

2.复制时,基本类型是直接复制了一个新的变量,新旧两个变量之间没有关系;

引用类型也复制了新的变量,但这个变量是一个指针,新旧两个指针指向同一个对象

3.函数的参数传递:所有的参数传递原理都是将外部的变量通过复制的方式传递给函数的参数。因此,函数内部对参数的操作对外部原变量无影响

下面分别以参数为基本类型和引用类型为例进行验证:

function addTen(num){ 
num += 10; 
return num; 
} 
var count = 20; 
var result = addTen(count); 
//这里内部对num的操作不会影响外部count的值 
function setName(obj){ 
obj.name = “Nicholas”; 
obj = new Object(); 
obj.name = “Greg”; 
} 
var person = new Object(); 
setName(person); 
alert(person.name); //返回”Nicholas”,说明仍然不影响外部的person对象的name

以上所述是小编给大家介绍的再谈Javascript中的基本类型和引用类型(推荐) ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
CSS+Table图文混排中实现文本自适应图片宽度(超简单+跨所有浏览器)
Feb 14 Javascript
javascript 浏览器判断 绑定事件 arguments 转换数组 数组遍历
Jul 06 Javascript
angularjs实现与服务器交互分享
Jun 24 Javascript
node.js中的console.error方法使用说明
Dec 10 Javascript
node.js中的fs.fchmod方法使用说明
Dec 16 Javascript
JavaScript制作简单的日历效果
Mar 10 Javascript
如何让一个json文件显示在表格里【实现代码】
May 09 Javascript
JavaScript每天必学之事件
Sep 18 Javascript
详解Angular 中 ngOnInit 和 constructor 使用场景
Jun 22 Javascript
angular2 ng2 @input和@output理解及示例
Oct 10 Javascript
webstorm中配置Eslint的两种方式及差异比较详解
Oct 19 Javascript
vue+element 模态框表格形式的可编辑表单实现
Jun 07 Javascript
JavaScript中有关一个数组中最大值和最小值及它们的下表的输出的解决办法
Jul 01 #Javascript
Bootstrap编写一个兼容主流浏览器的受众门户式风格页面
Jul 01 #Javascript
JS跨域交互(jQuery+php)之jsonp使用心得
Jul 01 #Javascript
Bootstrap编写一个兼容主流浏览器的受众巨幕式风格页面
Jul 01 #Javascript
解决bootstrap导航栏navbar在IE8上存在缺陷的方法
Jul 01 #Javascript
jQuery mobile的header和footer在点击屏幕的时候消失的解决办法
Jul 01 #Javascript
全面了解JavaScript的数据类型转换
Jul 01 #Javascript
You might like
PHP实现的封装验证码类详解
2013/06/18 PHP
php ajax数据传输和响应方法
2018/08/21 PHP
php的命名空间与自动加载实现方法
2019/08/25 PHP
extjs中grid中嵌入动态combobox的应用
2011/01/01 Javascript
ExtJs Excel导出并下载IIS服务器端遇到的问题
2011/09/16 Javascript
jquery struts 验证唯一标识(公用方法)
2013/03/27 Javascript
浅谈JavaScript中指针和地址
2015/07/26 Javascript
深入剖析JavaScript编程中的对象概念
2015/10/21 Javascript
基于javascript数组实现图片轮播
2016/05/02 Javascript
JS简单判断滚动条的滚动方向实现方法
2017/04/28 Javascript
原生JavaScript实现的简单放大镜效果示例
2018/02/07 Javascript
基于JavaScript实现瀑布流布局
2018/08/15 Javascript
bootstrap table实现合并单元格效果
2018/12/24 Javascript
详解element-ui中form验证杂记
2019/03/04 Javascript
浅谈Vue页面级缓存解决方案feb-alive(上)
2019/04/14 Javascript
JS中比较两个Object数组是否相等方法实例
2019/11/11 Javascript
微信小程序中的上拉、下拉菜单功能
2020/03/13 Javascript
小程序瀑布流组件实现翻页与图片懒加载
2020/05/19 Javascript
[02:08]DOTA2英雄基础教程 马格纳斯
2014/01/17 DOTA
Python将图片批量从png格式转换至WebP格式
2020/08/22 Python
windows 下python+numpy安装实用教程
2017/12/23 Python
Python中摘要算法MD5,SHA1简介及应用实例代码
2018/01/09 Python
详解django三种文件下载方式
2018/04/06 Python
不到20行代码用Python做一个智能聊天机器人
2019/04/19 Python
详解opencv中画圆circle函数和椭圆ellipse函数
2019/12/27 Python
运动鞋中的劳斯莱斯:索康尼(SAUCONY)
2017/08/09 全球购物
工程概预算专业毕业生求职信
2013/10/04 职场文书
事业单位接收函
2014/01/10 职场文书
学校关爱留守儿童活动方案
2014/08/27 职场文书
2014群众路线学习笔记
2014/11/06 职场文书
交通事故和解协议书
2015/01/27 职场文书
2015年度个人业务工作总结
2015/04/27 职场文书
阿凡达观后感
2015/06/10 职场文书
MySQL创建定时任务
2022/01/22 MySQL
Ubuntu18.04下QT开发Android无法连接设备问题解决实现
2022/06/01 Java/Android
一次SQL查询优化原理分析(900W+数据从17s到300ms)
2022/06/10 SQL Server