再谈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 相关文章推荐
解析javascript 数组以及json元素的添加删除
Jun 26 Javascript
使用简洁的jQuery方法实现隔行换色功能
Jan 02 Javascript
JavaScript使用Replace进行字符串替换的方法
Apr 14 Javascript
js面向对象之常见创建对象的几种方式(工厂模式、构造函数模式、原型模式)
Nov 09 Javascript
javascript ASCII和Hex互转的实现方法
Dec 27 Javascript
纯js实现动态时间显示
Sep 07 Javascript
Vue中computed、methods与watch的区别总结
Apr 10 Javascript
vue+koa2实现session、token登陆状态验证的示例
Aug 30 Javascript
jQuery中getJSON跨域原理的深入讲解
Sep 02 jQuery
Vue+axios封装请求实现前后端分离
Oct 23 Javascript
echarts柱状图背景重叠组合而非并列的实现代码
Dec 10 Javascript
JS前端宏任务微任务及Event Loop使用详解
Jul 23 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
一个ubbcode的函数,速度很快.
2006/10/09 PHP
php中文本操作的类
2007/03/17 PHP
php之XML转数组函数的详解
2013/06/07 PHP
解析:使用php mongodb扩展时 需要注意的事项
2013/06/18 PHP
php返回相对时间(如:20分钟前,3天前)的方法
2015/04/14 PHP
php文件上传原理与实现方法详解
2019/12/20 PHP
PHP架构及原理知识点详解
2019/12/22 PHP
jQuery 浮动广告实现代码
2008/12/25 Javascript
JS面向对象、prototype、call()、apply()
2009/05/14 Javascript
一个很酷的拖动层的js类,兼容IE及Firefox
2009/06/23 Javascript
JSON 和 JavaScript eval使用说明
2010/06/13 Javascript
javascript静态页面传值的三种方法分享
2013/11/12 Javascript
浅析javascript的return语句
2015/12/15 Javascript
AngularJS中实现显示或隐藏动画效果的方式总结
2015/12/31 Javascript
jQuery之动画效果大全
2016/11/09 Javascript
关于javascript事件响应的基础语法总结(必看篇)
2016/12/26 Javascript
原生JS实现前端本地文件上传
2018/09/08 Javascript
Vue 事件处理操作实例详解
2019/03/05 Javascript
浅谈js闭包理解
2019/03/28 Javascript
浅谈vue使用axios的回调函数中this不指向vue实例,为undefined
2020/09/21 Javascript
浅谈vue在html中出现{{}}的原因及解决方式
2020/11/16 Javascript
Vue如何跨组件传递Slot的实现
2020/12/14 Vue.js
Python的randrange()方法使用教程
2015/05/15 Python
python3.4.3下逐行读入txt文本并去重的方法
2018/04/29 Python
Django代码性能优化与Pycharm Profile使用详解
2018/08/26 Python
Python数据类型之Tuple元组实例详解
2019/05/08 Python
Python学习工具jupyter notebook安装及用法解析
2020/10/23 Python
详解Html5中video标签那些属性和方法
2019/07/01 HTML / CSS
解析HTML5中的新功能本地存储localStorage
2016/03/01 HTML / CSS
亚马逊新加坡官方网站:Amazon.sg
2020/03/25 全球购物
如何写出高质量、高性能的MySQL查询
2014/11/17 面试题
乡镇党员群众路线教育实践活动对照检查材料思想汇报
2014/10/05 职场文书
秋收起义观后感
2015/06/11 职场文书
2016年情人节问候语
2015/11/11 职场文书
小学班长竞选稿
2015/11/20 职场文书
MySQL串行化隔离级别(间隙锁实现)
2022/06/16 MySQL