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 相关文章推荐
国外Lightbox v2.03.3 最新版 下载
Oct 17 Javascript
Javascript Math对象
Aug 13 Javascript
jQuery实现切换页面布局使用介绍
Oct 09 Javascript
javascript firefox 自动加载iframe 自动调整高宽示例
Aug 27 Javascript
将查询条件的input、select清空
Jan 14 Javascript
AngularJS中的指令全面解析(必看)
May 20 Javascript
JavaScript实现简单图片轮播效果
Aug 21 Javascript
jquery中done和then的区别(详解)
Dec 19 jQuery
Vue防止白屏添加首屏动画的实例
Oct 31 Javascript
js实现图片上传到服务器和回显
Jan 19 Javascript
js 图片懒加载的实现
Oct 21 Javascript
在vs code 中如何创建一个自己的 Vue 模板代码
Nov 10 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
php桌面中心(四) 数据显示
2007/03/11 PHP
Centos PHP 扩展Xchche的安装教程
2016/07/09 PHP
Thinkphp5.0框架视图view的循环标签用法示例
2019/10/12 PHP
Three.js源码阅读笔记(Object3D类)
2012/12/27 Javascript
JavaScript将Table导出到Excel实现思路及代码
2013/03/13 Javascript
详解JavaScript函数绑定
2013/08/18 Javascript
详细分析JavaScript变量类型
2015/07/08 Javascript
深入理解逻辑表达式的用法 与或非的用法
2016/06/06 Javascript
JavaScript必知必会(九)function 说起 闭包问题
2016/06/08 Javascript
JavaScript中数组slice和splice的对比小结
2016/09/22 Javascript
Vue.js 2.0中select级联下拉框实例
2017/03/06 Javascript
JavaScript实现瀑布流图片效果
2017/06/30 Javascript
在Js页面通过POST传递参数跳转到新页面详解
2017/08/25 Javascript
初识 Vue.js 中的 *.Vue文件
2017/11/22 Javascript
vue轮播图插件vue-awesome-swiper
2017/11/27 Javascript
Tensorflow之构建自己的图片数据集TFrecords的方法
2018/02/07 Python
python3爬取各类天气信息
2018/02/24 Python
python匹配两个短语之间的字符实例
2018/12/25 Python
python实现中文文本分句的例子
2019/07/15 Python
numpy.array 操作使用简单总结
2019/11/08 Python
Python实现图片批量加入水印代码实例
2019/11/30 Python
在pycharm中创建django项目的示例代码
2020/05/28 Python
python爬虫实例之获取动漫截图
2020/05/31 Python
浅谈tensorflow 中的图片读取和裁剪方式
2020/06/30 Python
Python绘制词云图之可视化神器pyecharts的方法
2021/02/23 Python
Lands’ End英国官方网站:高质量男女服装
2017/10/07 全球购物
澳大利亚百货公司:David Jones
2018/02/08 全球购物
印度化妆品购物网站:Nykaa
2018/07/22 全球购物
2014年中班元旦活动方案
2014/02/14 职场文书
无毒社区工作方案
2014/05/23 职场文书
施工安全标语
2014/06/07 职场文书
员工教育培训协议书
2014/09/27 职场文书
健康状况证明模板
2014/10/23 职场文书
优秀员工演讲稿
2019/06/21 职场文书
Redis基本数据类型Set常用操作命令
2022/06/01 Redis
mysql序号rownum行号实现方式
2022/12/24 MySQL