浅析为什么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 相关文章推荐
TFDN图片播放器 不错自动播放
Oct 03 Javascript
FireFox下XML对象转化成字符串的解决方法
Dec 09 Javascript
jquery append()方法与html()方法的区别及使用介绍
Aug 01 Javascript
详解JavaScript的AngularJS框架中的作用域与数据绑定
Mar 04 Javascript
js如何准确获取当前页面url网址信息
Sep 13 Javascript
AngularJS基础 ng-cloak 指令简单示例
Aug 01 Javascript
JavaScript如何实现图片懒加载(lazyload) 提高用户体验(增强版)
Nov 30 Javascript
JavaScript实现二分查找实例代码
Feb 22 Javascript
js判断手机系统是android还是ios
Mar 07 Javascript
Vuex 快速入门(简单易懂)
Sep 20 Javascript
解决vux 中popup 组件Mask 遮罩在最上层的问题
Nov 03 Javascript
微信小程序实现自定义底部导航
Nov 18 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
ThinkPHP3.1的Widget新用法
2014/06/19 PHP
ci检测是ajax还是页面post提交数据的方法
2014/11/10 PHP
php通过array_unshift函数添加多个变量到数组前端的方法
2015/03/18 PHP
thinkphp中多表查询中防止数据重复的sql语句(必看)
2016/09/22 PHP
PHP strcmp()和strcasecmp()的区别实例
2016/11/05 PHP
PHP生成唯一ID之SnowFlake算法
2016/12/17 PHP
php常用正则函数实例小结
2016/12/29 PHP
PHP的HTTP客户端Guzzle简单使用方法分析
2019/10/30 PHP
php 下 html5 XHR2 + FormData + File API 上传文件操作实例分析
2020/02/28 PHP
javascript AutoScroller 函数类
2009/05/29 Javascript
JavaScript中的Web worker多线程API研究
2014/12/06 Javascript
javascript实现实时输出当前的时间
2015/04/27 Javascript
JS中script标签defer和async属性的区别详解
2016/08/12 Javascript
jQuery表单验证简单示例
2016/10/17 Javascript
vue.js移动端app实战1:初始配置详解
2017/07/24 Javascript
纯JS实现出生日期[年月日]下拉菜单效果
2018/06/01 Javascript
vue父组件异步获取数据传给子组件的方法
2018/07/26 Javascript
node.js实现为PDF添加水印的示例代码
2018/12/05 Javascript
websocket4.0+typescript 实现热更新的方法
2019/08/14 Javascript
layui复选框的全选与取消实现方法
2019/09/02 Javascript
Vue + Scss 动态切换主题颜色实现换肤的示例代码
2020/04/27 Javascript
从零开始用webpack构建一个vue3.0项目工程的实现
2020/09/24 Javascript
[39:21]LGD vs OG 2019国际邀请赛淘汰赛 胜者组 BO3 第二场 8.24
2019/09/10 DOTA
python 编码规范整理
2018/05/05 Python
python对list中的每个元素进行某种操作的方法
2018/06/29 Python
python的pyecharts绘制各种图表详细(附代码)
2019/11/11 Python
Python文件操作基础流程解析
2020/03/19 Python
Python logging模块写入中文出现乱码
2020/05/21 Python
Pytorch 扩展Tensor维度、压缩Tensor维度的方法
2020/09/09 Python
CSS3的 fit-content实现水平居中
2017/09/07 HTML / CSS
生产车间实习自我鉴定
2013/09/23 职场文书
大一军训感言
2014/01/09 职场文书
年度优秀员工获奖感言
2014/08/15 职场文书
员工试用期自我评价
2014/09/18 职场文书
2014年学校工会工作总结
2014/12/06 职场文书
Vite + React从零开始搭建一个开源组件库
2022/06/25 Javascript