javascript权威指南--全局对象与包装对象

3.5 全局对象
全局对象是预定义的对象。通过使用全局对象,可以访问所有其他所有预定义的对象、函数和属性。全局对象不是任何对象的属性,所以它没有名称。全局对象只是一个对象,而不是类。既没有构造函数,也无法实例化一个新的全局对象。

可通过this引用全局对象

var global=this//定义一个引用全局对象的全局变量

全局属性:undefined,infinity,NaN
3.6 包装对象
javascript对象是一种复合值:他是属性或已命名值的集合;

varv s="hello word!";
var word="s.substring(s.indexOf("")+1,s.legth);
//substring:Returns the characters in a string between two indexes into the string.
//indexOf:Returns the index within the calling String object of the first occurrence of the specified value.
//occurrence:happen;

只要引用了字符串的属性,javascript就会将字符串通过调用new string()的方式转换为对象,这个对象继承了字符串的方法

注意以下代码

var s="test"
s.len=4;
var t=s.len;

t==undefined
s.len=4;之后随即销毁这个对象
var t=s.len;找不到对象,返回值为未定义

在读取字符串,布尔值,和数字的属性值(方法)时,表现的和对象一样,但如果试图给其赋值,则会忽略此操作:修改发生在临时对象上,临时对象被销毁。
存取字符串,数字,或布尔值的属性时创造的对象为包装对象
注意
字符串,数字,布尔值的属性是readonly的,因此有别于一般对象
解决方法
通过以下对象构造函数来显式创建包装对象

var s="test",n=1,b=ture;
var S=new String(s);
var N=new Number(n);
var B=new Boolen(b);

通过typeof() 将原始值和包装对象显示的不一样;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值