[学习笔记]Javascript的包装对象
例子1:
var s="test";
s.len = 4;
var t = s.len // t is undefined
原因是s是字符串,第二行代码,实际上是创建一个临时字符串变量,并给其len属性赋值为4,第三行代码通过原始的字符串值创建一个新的字符串对象,然后再去读len属性,当然就没有了啦。
例子2:
var s ="hello,world";
var word = s.substring(6,s.length);//"word"
字符串不是对象,怎么会有属性呢?只要引用了字符串s的属性,Javascript就会将字符串值通过调用new Sring(s)的方式转化成对象,这个对象继承了字符创的方法。
例子3:
var s = new String("javascript");
var len = s.length; //len = 10
这个属性显式地new了一个对象实例。
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
存取字符串,数字或者布尔值的属性时创建的临时对象称作包装对象,可以通过String(),Number()或Boolean()构造函数来显式创建包装对象。var s = "test"; n = 1; b = true;
var S = new String(s);
var N = new Number(n);
var B = new Boolean(b); s == S; //true
n == N; //true
b == B; //true s === S; //false
n === N; //false
b === B; //false
typeof(s) //"string"
typeof(S) //"object"
typeof(n) //"number"
typeof(N) //"object"
typeof(b) //"boolean"
typeof(B) //"object"
Javascript会在必要时将包装对象转化成原始值。“==”等于运算符就将原始值和其包装对象看成相等,但“===”就得比较是否相同类型,相同值才行。
[学习笔记]Javascript的包装对象的更多相关文章
- JS学习笔记 等于和包装对象
严格等于 a===b 首先判断两边数据的类型,若类型不同,返回false. 若类型相同(1.2和1.2,字符串相等指内容和长度都是一样的),返回true null===null undefined== ...
- 学习笔记:Javascript 变量 包装对象
学习笔记:Javascript 变量 包装对象 如下代码,可以输出字符的长度. var str = "Tony"; str.length; 这时再试试以下代码,返回是 undefi ...
- 学习笔记---Javascript事件Event、IE浏览器下的拖拽效果
学习笔记---Javascript事件Event.IE浏览器下的拖拽效果 1. 关于event常用属性有returnValue(是否允许事件处理继续进行, false为停止继续操作).srcE ...
- Java学习笔记之---类和对象
Java学习笔记之---类和对象 (一)类 类是一个模板,它描述一类对象的行为和状态 例如:动物类是一个类,动物们都有属性:颜色,动物们都有行为:吃饭 public class Dog { Stri ...
- javascript学习笔记 - 引用类型 基本包装类型
六 基本包装类型 Boolean,Number,String 这三个引用类型亦称为基本包装类型,与基本的数据类型boolean,number,string相关联.为了方便操作这些基本类型的数据. 引用 ...
- HTML 学习笔记 JavaScript(面向对象)
现在让我们继续跟着大神的脚步前进 学习一下JavaScript中的面向对象的思想,其实作为一个iOS开发者,对面向对象还是比较熟悉的,但是昨晚看了一下Js中的面向对象,妈蛋 一脸萌比啊.还好有大神.让 ...
- [JS学习笔记]Javascript事件阶段:捕获、目标、冒泡
当你在浏览器上点击一个按钮时,点击的事件不仅仅发生在按钮上,同时点击的还有这个按钮的容器元素,甚至也点击了整个页面. 事件流 事件流描述了从页面接收事件的顺序,但在浏览器发展到第四代时,浏览器开发团队 ...
- [原创]java WEB学习笔记15:域对象的属性操作(pageContext,request,session,application) 及 请求的重定向和转发
本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...
- javascript类型系统——包装对象
× 目录 [1]定义 [2]生存期 [3]显式创建[4]转型函数[5]比较运算 前面的话 javascript对象是一种复合值,它是属性或已命名值的集合.通过'.'符号来引用属性值.当属性值是一个函数 ...
随机推荐
- powerdesigner 字段添加注释和默认值
powerdesigner 字段添加注释和默认值 2017年01月06日 10:59:02 qingzhuoran 阅读数:27161更多 个人分类: powerdesigner 1.选中表,右键 ...
- gb2312提交的url编码转换成utf8的查询
使用场景,当一网站是gb2312的编码向另一个是utf8的网站提交查询 如:http://search.chinayq.com/?key=%C0%D6%C6%F7 其中key为gb2312的url编码 ...
- linux_shell使用
一.hash命令 说明:linux系统下会有一个hash表,当你刚开机时这个hash表为空,每当你执行过一条命令时,hash表会记录下这条命令的路径,就相当于缓存一样.第一次执行命令shell解释器默 ...
- VBScript进阶篇一
VBScript进阶篇一 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.编译型与解释型的区别 其实我们通过一张图就可以大致了解一下,他们运行机制. 想要了解更多,请 ...
- 函数和常用模块【day04】:函数参数及调用(二)
本节内容 1.为什么要有参数 2.返回值 3.有参数函数调用 一.为什么要有参数? 无参数实现 def CPU报警邮件() #发送邮件提醒 连接邮箱服务器 发送邮件 关闭连接 def 硬盘报警邮件() ...
- CentOS6.8下搭建zookeeper web界面查看工具node-zk-browser
zookeeper的web界面查看工具Node-ZK-Browser的界面是用nodejs写的今天试着搭建了下. 1. 安装nodejs [root@localhost product]# pwd / ...
- golang结构体
声明结构体 定义结构体使用struct关键字.在结构体内部定义它们的成员变量和类型.如果成员变量的类型相同还可以把它们写到同一行. struct里面可以包含多个字段(属性) struct类型可以定义方 ...
- Spring RedisTemplate操作-注解缓存操作(11)
@Service @CacheConfig(cacheNames="user") public class RedisAn { public Map<String, User ...
- 地图上道路编号中的G S X Y
地图上道路中的G S X Y Z C D,分别表示什么道? 国道 省道 县道 乡道 专用道路 村道 D: 还没有搞明白
- 配置Arcengine10.1+java开发环境(Eclipse)
以下开发环境配置是假定用户已经安装了Java开发的IDE(Eclipse) 软件准备 (一)ArcEngine 10.1 安装包 提取码:poa0 (二)ArcGIS License Manager ...