JS-包装对象

1、字符串、数字、布尔值不是对象,为什么会有属性呢?例如:

1 var s = "test";
2 var len = s.length;//4,使用字符串的属性

因为只要引用了字符串s的属性,JavaScript就会将字符串值通过调用new String(s)的方式临时转换成对象,属性引用结束,临时对象销毁。

例如以下代码,对字符串s设置属性会失败:

1 var s = "test";
2 s.len = 4;
3 var t = s.len;// undefined

同样,数字和布尔值也具有各自的构造函数创建临时对象:Number()、Boolean()。在存取字符串、数字或布尔值的属性时创建的临时对象称作包装对象。

注:null和undefined没有包装对象,访问它们的属性会造成一个类型错误。

时间: 2024-10-06 02:53:05

JS-包装对象的相关文章

js数据类型隐式转换笔记以及js包装对象

“37”+7              //377 “37”-7              //30 巧用+/-规则  变字符串  x+''   变数字x-0 js里面的==是不严格等于 “123” == 123 0 == false nul l== undefined new  Object() == new Object() [1,2]==[1,2] 但是[1,2]===[1,2]是错的 因为比较的是对象的引用 ps: NaN值和任何东西比较都不相等 即便是不严格等于 ———————————

js基础学习之-js包装对象

1 var test = "test"; 2 test.a = "hello"; 3 console.log(test.a); //undifined 定义: 在JavaScript中,“一切皆对象”,数组和函数本质上都是对象,就连三种原始类型的值——数值.字符串.布尔值——在一定条件下,也会自动转为对象,也就是原始类型的“包装对象”. 通俗来讲: 字符串,数值,字符串,这些单身狗看其它人都有对象,非常不爽,所以自己也搞了个对象,名字叫包装. 1 console.l

轻松理解JS基本包装对象

今天来讨论一下JS中的基本包装对象(也叫基本包装类型),之前刚学到这里的时候,自己也是一头雾水,不明白这个基本包装对象到底是个什么鬼,后来找了很多资料,终于看清了它的真面目.首先呢,我们现在复习一下JS的数据类型,JS数据类型被分为了两大门派,基本类型和引用类型. 基本类型:Undefined,Null,Boolean,Number,String 引用类型:Object,Array,Date,RegExp等,说白了就是对象... 我们都知道,引用类型有方法和属性,但是基本类型是木有的,但是你一定

js学习笔记之包装对象

JavaScript包装对象 近日有时间,闲下来好好学习原生js JavaScript是一门面向对象语言,使用"."就可以访问对象的属性和方法,而基本类型(null, undefined, bool, number, string)应该是值类型,怎么会有属性和方法. 但是 var s="string"; console.log(s.length);//6 console.log(s.indexOf('i'));//3 于是去翻阅资料 JavaScript可以很灵活的

js的包装对象

包装对象 : 基本类型都有自己对应的包装对象 : String  Number  Boolean . 例如 var str = 'hello'; str.charAt(0);这里用的就是sting类型的包装对象String下面的方法.当执行这一句话的时候,基本类型会找到对应的包装对象类型,然后包装对象把所有的属性和方法给了基本类型,然后包装对象消失.看下面这道题 var str = 'hello'; str.number = 10; alert( str.number ); //undefine

标准库》第三章 包装对象和Boolean对象

第三部分  标准库 ***************第三章   包装对象和Boolean对象******************* 一.包装对象的定义[1]有人说,JavaScript语言"一切皆对象",数组和函数本质上都是对象,就连三种原始类型的值--数值.字符串.布尔值--在一定条件下,也会自动转为对象,也就是原始类型的"包装对象". 所谓"包装对象",就是分别与数值.字符串.布尔值相对应的Number.String.Boolean三个原生对象

(第一天)包装对象、作用域、创建对象

基本概念以及注意 直接量 :程序中直接使用的数据值.下面列出的都是直接量: 1 12 //数字 2 1.2 //小数 3 "hello world" //字符串文本 4 true //布尔值 5 /javascript/gi //正则表达式直接量 标识符 :必须以字母.下划线(_)或美元符($)开始 可选的分号 :如下代码 (1) 1 a = 3; /*两条语句分两行写,第一个分号可以省略*/ 2 b = 4; a = 3; b = 4; 第一个分号则不能省略掉 (2) 1 retur

原始对象和包装对象

我们先看段代码: var s = "Test"; var len=s.length; 我们知道在JavaScript中像上面这样声明的字符串不是对象,但既然这里的s不是对象,为什么会有length的属性呢? 原因是在JavaScript中只要引用了字符串(数字.布尔值也是一样的)的属性,JS就会将字符串通过调用new String(s)的方式转换成对象,这个对象继承了字符串的方法,并被用来处理属性的引用.一旦属性引用结束,这个新创建的对象就会销毁(真实实现并不一定是这样,但整个过程看起

什么是包装对象

JS提供了11种引用类型:Object.Array.Date.Function.Error.RegExp.Math.Number.String.Boolean.Globle.其中包括了三种基本包装类型,也就是Number.String和Boolean,它们是特殊的引用类型,既与其他的引用类型相似,同时又具有与各自的原始类型相应的特殊行为. 一.什么是包装类型? 因为这字符串.数值.布尔三种原始类型的值,在一定条件下会自动转化为对象,因此被称为原始类型的“包装类型”. 例如:var a1="som

浅谈javascript中的包装对象

javascript中的对象类型分为内置类型和对象类型,其中内置类型包括sting number boolean null undefined五种:对象类型包括Array Function regExp Date 等等,统称为Object类型.我们知道在一个对象中包含一系列属性名/属性值的集合,可以通过"."来访问对象的属性或方法,如: 1 window.onload=function(){//可执行代码} 但我们常常可以看到这样的代码: 1 var str="hello w