浅析为什么a="abc" 不等于 a=new String("abc")


Posted in Javascript onOctober 25, 2017

显而易见

a="abc"
typeof a //string
b=new String("abc")
typeof b // object
a==b //true
a===b //false

但是为什么呢?看了很多书,问了好几个大神,其实自己还是稀里糊涂的。这里记录一下,备查。

在js中,区分原始资料类型和包装类型。数字、字符串、布尔、null、undefined 属于原始资料类型,而Number、String、Boolean属于包装类型,通过new Number 创建的是包装类型的派生对象。所以两者是不等的。

直接赋值为基本类型之后的使用过程如下:

1、创建String类型的一个实例

2、在实例上调用指定的方法

3、销毁实例

举例:

var a="123"
a.toFixed===Number.prototype.toFixed;

这里还有一种说法:装箱,拆箱

装箱,就是用这个值类构造一个相应的包装对象

var a=10 ,b="javascript" , c=true;
  var o_a=new Number(a);
  var o_b=new String(b);
  var o_c=new Boolean(c);

   装箱的最大作用是将值作为对象来处理。

拆箱,是包装对象转换成值类型

var a=10;
 var o_a=new Number(a);
 var b=o_a.valueOf();//这就是拆箱的过程。

总结

以上所述是小编给大家介绍的为什么a="abc" 不等于 a=new String("abc"),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
用js实现手把手教你月入万刀(转贴)
Nov 07 Javascript
jQuery Tools tab(幻灯片)
Jul 14 Javascript
JavaScript 模拟类机制及私有变量的方法及思路
Jul 10 Javascript
javascript特殊用法示例介绍
Nov 29 Javascript
jquery上传插件fineuploader上传文件使用方法(jquery图片上传插件)
Dec 05 Javascript
js判断横竖屏及禁止浏览器滑动条示例
Apr 29 Javascript
jquery实现可拖拽弹出层特效
Jan 04 Javascript
js实现使用鼠标拖拽切换图片的方法
May 04 Javascript
jQuery替换textarea中换行的方法
Jun 10 Javascript
JS调用Android、Ios原生控件
Jan 06 Javascript
vue element upload组件 file-list的动态绑定实现
Oct 11 Javascript
vue-cli4项目开启eslint保存时自动格式问题
Jul 13 Javascript
vue语法之拼接字符串的示例代码
Oct 25 #Javascript
浅谈Vue.nextTick 的实现方法
Oct 25 #Javascript
纯html+css+javascript实现楼层跳跃式的页面布局(实例代码)
Oct 25 #Javascript
浅谈Node.js之异步流控制
Oct 25 #Javascript
AngularJS 实现购物车全选反选功能
Oct 24 #Javascript
React Native时间转换格式工具类分享
Oct 24 #Javascript
vue+vuecli+webpack中使用mockjs模拟后端数据的示例
Oct 24 #Javascript
You might like
星际争霸 Starcraft 秘技补丁
2020/03/14 星际争霸
PHP版自动生成文章摘要
2008/07/23 PHP
PHP生成不同颜色、不同大小的tag标签函数
2013/09/23 PHP
PHP+apc+ajax实现的ajax_upload上传进度条代码
2016/01/25 PHP
PHP crc32()函数讲解
2019/02/14 PHP
纯JS实现的批量图片预览加载功能
2011/08/14 Javascript
javascript 实现 秒杀,团购 倒计时展示的记录 分享
2013/07/12 Javascript
javascript unicode与GBK2312(中文)编码转换方法
2013/11/14 Javascript
javascript实现炫酷的拖动分页
2015/05/11 Javascript
详解jQuery移动页面开发中的ui-grid网格布局使用
2015/12/03 Javascript
AngularJS入门教程之 XMLHttpRequest实例讲解
2016/07/27 Javascript
AngularJS表单提交实例详解
2017/02/18 Javascript
详解Vue 事件驱动和依赖追踪
2017/04/22 Javascript
vue.js中v-on:textInput无法执行事件问题的解决过程
2017/07/12 Javascript
Angularjs实现下拉框联动的示例代码
2017/08/22 Javascript
Angular客户端请求Rest服务跨域问题的解决方法
2017/09/19 Javascript
vue.js 实现输入框动态添加功能
2018/06/25 Javascript
利用Vconsole和Fillder进行移动端抓包调试方法
2019/03/05 Javascript
js时间转换毫秒的实例代码
2019/08/21 Javascript
vue实现手机端省市区区域选择
2019/09/27 Javascript
Vue实现兄弟组件间的联动效果
2020/01/21 Javascript
解决vue+elementui项目打包后样式变化问题
2020/08/03 Javascript
python通过Windows下远程控制Linux系统
2018/06/20 Python
python十进制和二进制的转换方法(含浮点数)
2018/07/07 Python
Python企业编码生成系统之主程序模块设计详解
2019/07/26 Python
Python中如何添加自定义模块
2020/06/09 Python
Django用内置方法实现简单搜索功能的方法
2020/12/18 Python
检测用户浏览器是否支持CSS3的方法
2009/08/29 HTML / CSS
JD Sports西班牙:英国领先的运动服装公司
2020/01/06 全球购物
RUIFIER官网:英国奢侈高级珠宝品牌
2020/06/12 全球购物
中文系学生自荐信范文
2013/11/13 职场文书
优秀的个人求职信范文
2014/05/09 职场文书
青年教师师德演讲稿
2014/08/26 职场文书
毕业生党员个人总结
2015/02/14 职场文书
go mod 安装依赖 unkown revision问题的解决方案
2021/05/06 Golang
html+css实现分层金字塔的实例
2021/06/02 HTML / CSS