浅谈javascript中的数据类型和引用类型
1.概述
javascript中有五种简单数据类型和一种复杂数据类型。
分别是:undefind, null, number, string ,boolean ----简单数据类型
Object------复杂数据类型
令人迷惑的是还有以下若干种引用类型。
分别是:Array,Date,RegExp,Function,Object
Number,String,Boolean-----基本包装类型
Global Object,Math------单体内置对象
2.差异
大家有歧义的地方肯定是number string boolean和Number String Boolean之间的差异
光从字面意思分辨二者不太直观,说出东西来只能是理论,还很绕,我们可以做实验来分辨。
window.onload = function () {var a = 100; //number类型变量var b = Number(100); //使用Number函数进行数据类型转换var c = new Number(100); //定义一个Number对象且它的值为100alert(typeof a + ',' + typeof b + ',' + typeof c); //number,number,objecta.name = 'jack'; //设置属性无效b.name = 'mary'; //设置属性无效c.name = 'tom'; //name属性值为tomalert(a.name + ',' + b.name + ',' + c.name); //undefined,undefined,tom//--------------------华丽丽的分割线---------------------------------------var d = new String(10);setValue(d); //形参赋值肯定无效,d仍为10setName(d); //按照C语言的说法,此时d为name属性的指针。d的name为roseswapValue(c, d); //形参赋值还是无效,甭管形参是值还是指针.c的name还是tomswapName(c, d);//交换成功,c的name为rose };function setName(obj) {obj.name = 'rose';}function setValue(value) {value = 'rose';}function swapValue(val1, val2) {val1 = val2;}function swapName(val1, val2) {val1.name = val2.name;}
转载于:https://www.cnblogs.com/JhoneLee/p/3540413.html
浅谈javascript中的数据类型和引用类型相关推荐
- 浅谈JavaScript中的NaN
浅谈JavaScript中的NaN NaN概念以及简单案例 追寻的纯粹该拥有自己的本质.-JC.F 什么是NaN? NaN:NaN(Not a Number),它表示不是数字,但是仍是数值类型. Na ...
- 浅谈javascript中原型(prototype)、构造函数、对象实例及三者之间的关系
转自:http://www.cnblogs.com/zhangwei412827/archive/2012/12/14/2816263.html 浅谈javascript中原型(prototype). ...
- html 滚动条 scrolltop scrollheight,浅谈JavaScript中scrollTop、scrollHeight、offsetTop、offsetHeight...
浅谈JavaScript中scrollTop.scrollHeight.offsetTop.offsetHeight 发布时间:2020-07-17 09:27:20 来源:亿速云 阅读:223 作者 ...
- 浅谈Java中的数据类型以及面向对象
在汇编语言中,没有类型的划分,只有数据跟指令,当然这也是从程序的角度去理解,对CPU来说,一切都是数据. 1:数据类型的概念 啥子叫类型?它是抽象的,是对具有相同特征跟行为的对象的描述.万物皆对象,对 ...
- 浅谈JavaScript中闭包
引言 闭包可以说是JavaScript中最有特色的一个地方,很好的理解闭包是更深层次的学习JavaScript的基础.这篇文章我们就来简单的谈下JavaScript下的闭包. 闭包是什么? 闭包是什么 ...
- JavaScript中基本数据类型与引用类型
js中的数据类型有以下几种: Number(数字) String(字符串) Object(对象) Boolean(布尔) undefined null Es6 新增 Symbol 1.基本类型:Und ...
- 浅谈Javascript中的void操作符
由于JS表达式偏啰嗦,于是最近便开始采用Coffeescript来减轻负担.举个栗子,当我想取屋子里的第一条dog时,首先要判断house对象是否存在,然后再判断house.dogs是否存在,最后取h ...
- html dom节点类型,浅谈Javascript中的12种DOM节点类型
前言 DOM的作用是将网页转为一个javascript对象,从而可以使用javascript对网页进行各种操作(比如增删内容).浏览器会根据DOM模型,将HTML文档解析成一系列的节点,再由这些节点组 ...
- 浅谈JavaScript中的事件
事件在javascript中是响应用户的一种基本操作,本文列举了两种javascript中的事件模型及其绑定的方式,希望能对你的学习带来一点帮助.这些都是非常基础的但或许其中有你所遗漏.(以下事件均针 ...
最新文章
- [转]Android敏捷开发指南
- 终身成长究竟有多重要?
- java海康sdk_java 集成 海康 SDK
- 一个资深技术人的转型之路
- 成都计算机大专学校公办,成都设有计算机应用技术的公办大专学校
- 【S操作】一个简单粗暴易用的远程调试方案——OTA http update
- programing python_Programing in Python3(Second Edition)_实例
- java面试编程面试题_完美的编程面试问题
- MATLAB2016打开mat格式图片
- python与机器学习(一)图片相关操作
- 人脸系列:人脸检测、人脸关键点定位、人脸优选、人脸对齐、人脸特征提取、人脸跟踪、人脸活体检测
- PL/SQL 快捷键设置
- Rust: flat_map、filter_map、for_each
- 定制10kV变压器感应雷直击雷击变压器加避雷器atp-emtp模型
- python cartopy绘制中国区域(包含国界、省界、十段线以及海南诸岛)
- 直播软件开发,直播软件源码+三级分销模式的搭建
- idea创建web项目的时候报错:Error reading file E:/workspaces/**/pom.xml
- Python3 - Dockerfile 最佳实践
- onnxruntime cuda版本使用时出现的错误汇总
- Java可以hook微信吗,Hook实现Android 微信、陌陌 、探探位置模拟(附源码下载)