JavaScript中的包装对象介绍


Posted in Javascript onJanuary 27, 2015

javascript对象是一种复合值,它是属性或已命名的值的集合,通过符号"."来引用属性值,当属性值是一个函数的时候,我们称之为方法。我们看到字符串也具有属性和方法:

var s="hello,world!";

var word=s.substring(s.indexof("")+1,s.length);

字符串既然不是对象,为什么它又有属性呢,只要引用了字符串s的属性,javascript就会将字符串值通过调用new String(s)的构造函数转换成对象,这个对象继承了字符串的方法,并用来处理对属性的引用,一旦属性引用结束,这个新创建的对象就会被销毁(其实实现上并不一定会创建这个对象,只是整个过程看起来这样)。

同字符串一样,数字和布尔值也具有各自的方法:通过Number()和Boolean()构造函数创建一个临时对象,这些方法的调用均来自这个临时对象。这个临时对象被称之为包装对象。

注意 :

       var s="test";   //声明一个字符串

       s.len=4;    //给它设置一个len属性

       var t=s.len;   //查询这个属性

这个时候我们输出t时应当为undefined,第二行代码创建一个临时字符串对象,并给其len属性赋值为4,随即销毁这个对象,第三行代码通过原始的字符串值s设置一个新的属性,尝试读取其len属性,这个属性自然不存在,所以t输出时值为undefined。

这段代码表明,在读取数字,字符串,布尔值的属性值(或方法)时,表现得像对象一样,但试图给其属性赋值时,则会忽略这个操作:修改只是发生在临时对象上,而这个临时对象并未继续保留下来。

存取字符串、数字、或布尔值的属性时创建的临时对象称作包装对象,它只是偶尔用来区分字符串值和字符串对象,数字和数值对象,布尔值和布尔对象

Javascript 相关文章推荐
提交表单时执行func方法实现代码
Mar 17 Javascript
JS获取图片实际宽高及根据图片大小进行自适应
Aug 11 Javascript
jQuery实现用户注册的表单验证示例
Aug 28 Javascript
浅谈JavaScript字符串拼接
Jun 25 Javascript
js实现简单的碰壁反弹效果
Aug 30 Javascript
微信小程序 摇一摇抽奖简单实例实现代码
Jan 09 Javascript
jQuery快速实现商品数量加减的方法
Feb 06 Javascript
使用jQuery监听扫码枪输入并禁止手动输入的实现方法(推荐)
Mar 21 jQuery
实例讲解JavaScript截取字符串
Nov 30 Javascript
JQuery常用选择器功能与用法实例分析
Dec 23 jQuery
微信小程序实现上拉加载功能示例【加载更多数据/触底加载/点击加载更多数据】
May 29 Javascript
React forwardRef的使用方法及注意点
Jun 13 Javascript
浅谈JSON中stringify 函数、toJosn函数和parse函数
Jan 26 #Javascript
浅谈JavaScript Math和Number对象
Jan 26 #Javascript
js判断一个字符串是否包含一个子串的方法
Jan 26 #Javascript
javascript中Object使用详解
Jan 26 #Javascript
JQuery中的事件及动画用法实例
Jan 26 #Javascript
javascript折半查找详解
Jan 26 #Javascript
JavaScript数据类型检测代码分享
Jan 26 #Javascript
You might like
如何用phpmyadmin设置mysql数据库用户的权限
2012/01/09 PHP
PHP Hash算法:Times33算法代码实例
2015/05/13 PHP
Yii2 输出xml格式数据的方法
2016/05/03 PHP
jQuery 事件队列调整方法
2009/09/18 Javascript
JavaScript 字符串处理函数使用小结
2010/12/02 Javascript
JavaScript 代码压缩工具小结
2012/02/27 Javascript
javascript基础知识大全 便于大家学习,也便于我自己查看
2012/08/17 Javascript
jQuery语法总结和注意事项小结
2012/11/11 Javascript
js实现字符串的16进制编码不加密
2014/04/25 Javascript
Extjs 4.x 得到form CheckBox 复选框的值
2014/05/04 Javascript
jQuery操作select下拉框的text值和value值的方法
2014/05/31 Javascript
NodeJS学习笔记之Connect中间件模块(一)
2015/01/27 NodeJs
jquery实现拖拽调整Div大小
2015/01/30 Javascript
浏览器兼容性问题大汇总
2015/12/17 Javascript
jQuery处理XML文件的几种方法
2016/06/14 Javascript
JS判断浏览器是否安装flash插件的简单方法
2016/09/13 Javascript
jQuery实现动态添加、删除按钮及input输入框的方法
2017/04/27 jQuery
基于vue2实现上拉加载功能
2017/11/28 Javascript
vue-router中的hash和history两种模式的区别
2018/07/17 Javascript
JS实现电话号码的字母组合算法示例
2019/02/26 Javascript
Vue强制组件重新渲染的方法讨论
2020/02/03 Javascript
openLayer4实现动态改变标注图标
2020/08/17 Javascript
JavaScript 如何计算文本的行数的实现
2020/09/14 Javascript
vue项目开启Gzip压缩和性能优化操作
2020/10/26 Javascript
python pygame模块编写飞机大战
2018/11/20 Python
详解pandas获取Dataframe元素值的几种方法
2020/06/14 Python
了解一下python内建模块collections
2020/09/07 Python
CSS改变网页中鼠标选中文字背景颜色例子
2014/04/23 HTML / CSS
医学生求职自荐信
2013/10/25 职场文书
标准自荐信范文
2014/01/29 职场文书
软件售后服务方案
2014/05/29 职场文书
学习优秀党务工作者先进事迹材料思想报告
2014/09/17 职场文书
课外活动实习计划
2015/01/19 职场文书
文体活动总结
2015/02/04 职场文书
2016入党积极分子心得体会
2016/01/06 职场文书
解决jupyter notebook启动后没有token的坑
2021/04/24 Python