浅析为什么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 相关文章推荐
JavaScript 中的事件教程
Apr 05 Javascript
firefo xml 读写实现js代码
Jun 11 Javascript
JavaScript实现当网页加载完成后执行指定函数的方法
Mar 21 Javascript
JavaScript中innerHTML,innerText,outerHTML的用法及区别
Sep 01 Javascript
详解Node.js模块间共享数据库连接的方法
May 24 Javascript
JavaScript实现的select点菜功能示例
Jan 16 Javascript
利用nvm管理多个版本的node.js与npm详解
Nov 02 Javascript
jQuery实现的滑块滑动导航效果示例
Jun 04 jQuery
用npm-run实现自动化任务的方法示例
Jan 14 Javascript
Vue打包后访问静态资源路径问题
Nov 08 Javascript
vue实现单一筛选、删除筛选条件
Oct 26 Javascript
vue 动态生成拓扑图的示例
Jan 03 Vue.js
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
精致的人儿就要挑杯子喝咖啡
2021/03/03 冲泡冲煮
比较完整的微信开发php代码
2016/08/02 PHP
php简单统计中文个数的方法
2016/09/30 PHP
PHP实现二维数组按某列进行排序的方法
2016/11/18 PHP
基于jQuery的ajax功能实现web service的json转化
2009/08/29 Javascript
Dom与浏览器兼容性说明
2010/10/25 Javascript
JavaScript中使用构造器创建对象无需new的情况说明
2012/03/01 Javascript
js实现input框文字动态变换显示效果
2015/08/19 Javascript
基于jquery实现省市区三级联动效果
2015/12/25 Javascript
jquery实现下拉框左右选择功能
2017/02/21 Javascript
angularJS的radio实现单项二选一的使用方法
2018/02/28 Javascript
浅谈angular表单提交中ng-submit的默认使用方法
2018/09/30 Javascript
Vue项目使用localStorage+Vuex保存用户登录信息
2019/05/27 Javascript
通过vue写一个瀑布流插件代码实例
2019/09/07 Javascript
谈谈IntersectionObserver懒加载的具体使用
2019/10/15 Javascript
js 计算月/周的第一天和最后一天代码
2020/02/01 Javascript
深入浅析vue全局环境变量和模式
2020/04/28 Javascript
Vue实现图片轮播组件思路及实例解析
2020/05/11 Javascript
解决Vue的项目使用Element ui 走马灯无法实现的问题
2020/08/03 Javascript
小程序组件传值和引入sass的方法(使用vant Weapp组件库)
2020/11/24 Javascript
[50:24]VGJ.S vs Pain 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/20 DOTA
[01:04:14]VP vs TNC 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/20 DOTA
Python中的测试模块unittest和doctest的使用教程
2015/04/14 Python
[原创]pip和pygal的安装实例教程
2017/12/07 Python
python 字符串和整数的转换方法
2018/06/25 Python
ZABBIX3.2使用python脚本实现监控报表的方法
2019/07/02 Python
Python3+Appium安装使用教程
2019/07/05 Python
python实现多进程按序号批量修改文件名的方法示例
2019/12/30 Python
Python日志器使用方法及原理解析
2020/09/27 Python
python drf各类组件的用法和作用
2021/01/12 Python
使用简单的CSS3属性实现炫酷读者墙效果
2014/01/08 HTML / CSS
中国跨境海淘网站:考拉海购
2016/08/01 全球购物
现在输入n个数字,以逗号,分开;然后可选择升或者降序排序;按提交键就在另一页面显示按什么排序,结果为,提供reset
2012/11/09 面试题
计算机本科生自荐信
2013/10/15 职场文书
高中生自我评语大全
2014/01/19 职场文书
家长反馈意见及建议
2015/06/03 职场文书