再谈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 Split方法,indexOf方法、lastIndexOf 方法和substring 方法
Mar 21 Javascript
从数组中随机取x条不重复数据的JS代码
Dec 24 Javascript
javascript实现在下拉列表中显示多级树形菜单的方法
Aug 12 Javascript
Javascript实现通过选择周数显示开始日和结束日的实现代码
May 30 Javascript
JS产生随机数的几个用法详解
Jun 22 Javascript
JavaScript鼠标特效大全
Sep 13 Javascript
js实现漫天星星效果
Jan 19 Javascript
JS 实现百度搜索功能
Feb 01 Javascript
Vue 幸运大转盘实现思路详解
May 06 Javascript
jQuery实现的点击显示隐藏下拉菜单功能完整示例
May 17 jQuery
了解重排与重绘
May 29 Javascript
JS数组降维的实现Array.prototype.concat.apply([], arr)
Apr 28 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
深入解析fsockopen与pfsockopen的区别
2013/07/05 PHP
PHP字符串word末字符实现大小写互换的方法
2014/11/10 PHP
php中注册器模式类用法实例分析
2015/11/03 PHP
PHP接收json 并将接收数据插入数据库的实现代码
2015/12/01 PHP
Zend Framework过滤器Zend_Filter用法详解
2016/12/09 PHP
PHP使用curl_multi实现并发请求的方法示例
2018/04/29 PHP
Referer原理与图片防盗链实现方法详解
2019/07/03 PHP
javascript实现的listview效果
2007/04/28 Javascript
juqery 学习之三 选择器 层级 基本
2010/11/25 Javascript
JavaScript打字小游戏代码
2011/12/26 Javascript
iframe 上下滚动条如何默认在下方实现原理
2012/12/10 Javascript
给超链接添加特效鼠标移动展示提示信息且随鼠标移动
2013/10/17 Javascript
setTimeout()递归调用不加引号出错的解决方法
2014/09/05 Javascript
浅谈javascript 归并方法
2015/01/21 Javascript
全面解析Bootstrap中scrollspy(滚动监听)的使用方法
2016/06/06 Javascript
jQuery ajax中使用confirm,确认是否删除的简单实例
2016/06/17 Javascript
jQuery 的 ready()的纯js替代方法
2016/11/20 Javascript
基于nodejs 的多页面爬虫实例代码
2017/05/31 NodeJs
Vue路由跳转问题记录详解
2017/06/15 Javascript
ligerUI---ListBox(列表框可移动的实例)
2017/11/28 Javascript
Angular项目如何升级至Angular6步骤全纪录
2018/09/03 Javascript
vue项目中实现的微信分享功能示例
2019/01/21 Javascript
详解vue 自定义组件使用v-model 及探究其中原理
2019/10/11 Javascript
Node.js 实现抢票小工具 & 短信通知提醒功能
2019/10/22 Javascript
vue实现分页加载效果
2019/12/24 Javascript
微信小程序文章详情功能完整实例
2020/06/03 Javascript
Python数据结构之哈夫曼树定义与使用方法示例
2018/04/22 Python
python安装模块如何通过setup.py安装(超简单)
2018/05/05 Python
python实现文件助手中查看微信撤回消息
2019/04/29 Python
Python同时处理多个异常的方法
2020/07/28 Python
CSS3模拟动画下拉菜单效果
2017/04/12 HTML / CSS
大学生求职简历的自我评价范文
2013/10/12 职场文书
乡镇党的群众路线对照检查材料
2014/09/24 职场文书
群众路线领导班子整改方案
2014/10/25 职场文书
python flask框架快速入门
2021/05/14 Python
Java中多线程下载图片并压缩能提高效率吗
2021/07/01 Java/Android