前端重新学习(2)基本包装类型

本文深入探讨了JavaScript中特殊的引用类型:Boolean、Number和String,解释了它们如何在后台自动转化为基本包装类型,并提供了实例说明。同时,文章还介绍了Number和String类型的一些常用方法。

 JS 3 个特殊的引用类型:Boolean、Number 和 String这些类型与其他引用类型相似,但同时也具有与各自的基本类型相应的特殊行为。 实际上,每当读取一个基本类型值的时候,后台就会创建一个对应的基本包装类型的对象, 从而能够调用一些方法来操作这些数据。

 基本包装类型概述

var box='Mr.Lee'; //定义一个字符串 

var box2= box.substring(2); //截掉字符串前两位 

alert(box2); //输出新字符串


变量 box 是一个字符串类型,而 box.substring(2)又说明它是一个对象(PS:只有对象才 会调用方法),最后把处理结果赋值给 box2。'Mr.Lee'是一个字符串类型的值,按道理它不 应该是对象,不应该会有自己的方法,比如: alert('Mr.Lee'.substring(2)); //直接通过值来调用方法


1.字面量写法:

var box='Mr.Lee'; //字面量 

box.name='Lee'; //无效属性 

box.age= function(){ //无效方法 

            return100; 

        }; 

alert(box); //Mr.Lee 

alert(box.substring(2)); //.Lee 

alert(typeofbox); //string 

alert(box.name); //undefined 

alert(box.age()); //错误


2.new 运算符写法:

var box=new String('Mr.Lee'); //new 运算符 

box.name='Lee'; //有效属性 

box.age= function(){ //有效方法 

    return100;

};

alert(box); //Mr.Lee 

alert(box.substring(2)); //.Lee 

alert(typeofbox); //object 

alert(box.name); //Lee 

alert(box.age()); //100


以上字面量声明和 new 运算符声明很好的展示了他们之间的区别。但有一定还是可以 肯定的,那就是不管字面量形式还是 new 运算符形式,都可以使用它的内置方法。并且 Boolean 和 Number 特性与 String 相同,三种类型可以成为基本包装类型。 PS:在使用 new 运算符创建以上三种类型的对象时,可以给自己添加属性和方法,但 我们建议不要这样使用,因为这样会导致根本分不清到底是基本类型值还是引用类型值。
 

Number类型
 

Number 类型有一些静态属性(直接通过 Number 调用的属性,而无须 new 运算符)和方 法。 

var box=1000.789;
 alert(box.toString()); //转换为字符串,传参可以转换进制 

alert(box.toLocaleString()); //本地形式,1,000.789 

alert(box.toFixed(2)); //小数点保留,1000.78 

alert(box.toExponential()); //指数形式,传参会保留小数点 

alert(box.toPrecision(3)); //指数或点形式,传参保留小数点

String类型

 

String 类型包含了三个属性和大量的可用内置方法。

 String 也包含对象的通用方法,比如 valueOf()、toLocaleString()和 toString()方法,但这 些方法都返回字符串的基本值。

var box='Mr.Lee'; 
alert(box.charAt(1)); //r 
alert(box.charCodeAt(1)); //114 
alert(box[1]); //r,通过数组方式截取

PS:box[1]在 IE 浏览器会显示 undefined,所以使用时要慎重。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值