浅析为什么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 相关文章推荐
jQuery 性能优化指南(3)
May 21 Javascript
js,jQuery 排序的实现代码,网页标签排序的实现,标签排序
Apr 27 Javascript
document.getElementById获取控件对象为空的解决方法
Nov 20 Javascript
js限制文本框只能输入中文的方法
Aug 11 Javascript
JS中Json数据的处理和解析JSON数据的方法详解
Jun 29 Javascript
使用JavaScript获取Request中参数的值方法
Sep 27 Javascript
JS获取IE版本号与HTML设置IE文档模式的方法
Oct 09 Javascript
判断颜色是否合法的正则表达式(详解)
May 03 Javascript
JS实现瀑布流布局
Oct 21 Javascript
结合mint-ui移动端下拉加载实践方法总结
Nov 08 Javascript
使用 Vue 实现一个虚拟列表的方法
Aug 20 Javascript
vue的滚动条插件实现代码
Sep 07 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
PHP开发中常用的十个代码样例
2016/02/02 PHP
php调用自己java程序的方法详解
2016/05/13 PHP
PHP中类的自动加载的方法
2017/03/17 PHP
Yii使用EasyWechat实现小程序获取用户的openID的方法
2020/04/29 PHP
通过JavaScript控制字体大小的代码
2011/10/04 Javascript
jQuery登陆判断简单实现代码
2013/04/21 Javascript
页面实时更新时间的JS实例代码
2013/12/18 Javascript
jquery实现的图片点击滚动效果
2014/04/29 Javascript
Javascript 学习笔记之 对象篇(二) : 原型对象
2014/06/24 Javascript
javascript中的正则表达式使用详解
2015/08/30 Javascript
javascript中错误使用var造成undefined
2016/03/31 Javascript
前端学习笔记style,currentStyle,getComputedStyle的用法与区别
2016/05/28 Javascript
jquery.validate使用详解
2016/06/02 Javascript
JS+CSS实现网页加载中的动画效果
2017/10/27 Javascript
jQuery实现左右滑动的toggle方法
2018/03/03 jQuery
vue 项目接口管理的实现
2019/01/17 Javascript
Angular2使用SVG自定义图表(条形图、折线图)组件示例
2019/05/10 Javascript
原生js实现放大镜组件
2021/01/22 Javascript
Django查询数据库的性能优化示例代码
2017/09/24 Python
vscode 远程调试python的方法
2017/12/01 Python
Python设计模式之状态模式原理与用法详解
2019/01/15 Python
python Gunicorn服务器使用方法详解
2019/07/22 Python
python函数不定长参数使用方法解析
2019/12/14 Python
pytorch方法测试详解——归一化(BatchNorm2d)
2020/01/15 Python
python 给图像添加透明度(alpha通道)
2020/04/09 Python
安装多个版本的TensorFlow的方法步骤
2020/04/21 Python
matplotlib bar()实现百分比堆积柱状图
2021/02/24 Python
经济实惠的豪华背包和行李袋:Packs Project
2018/10/17 全球购物
德国高尔夫商店:Par71.de
2020/11/29 全球购物
学校大课间活动方案
2014/01/30 职场文书
狼和鹿教学反思
2014/02/05 职场文书
恶搞卫生巾广告词
2014/03/18 职场文书
2014年教师业务工作总结
2014/12/19 职场文书
培根随笔读书笔记
2015/07/01 职场文书
golang 接口嵌套实现复用的操作
2021/04/29 Golang
vue使用watch监听属性变化
2022/04/30 Vue.js