回归JavaScript基础(八)
主题:引用类型包装类、单体内置对象的介绍。
对于我们开发人员来说,JavaScript有种引用类型一定很陌生!那就是基本包装类型:Boolean、Number和String。这也不是我们的错,主要这些我们平时根本都用不到。这些都是JavaScript内部自动调用。这么说,你可能有点懵。下面,我来举个例子。
var s1 = "hello,world";
var s2 = s1.substring(1);
console.log(s2); //"ello,world"
对于上面的代码输出的结果,有没有感觉有问题!对于一个基本类型的字符串s1,从逻辑上来说是不存在什么方法的,那为什么程序却没有报错。其实,当程序执行到第二行的时候,后台经历了这样一个过程,写出代码的话如下面所示:
var s1 = new String("hello,world");
var s2 = s1.substring(1);
//等实例上调用指定方法后立即销毁这个实例,整个过程都在后台发生,我们并没有什么察觉
了解这个过程即可。我们一般也不会用到这些包装类。
接下来讲述的就是最后一种引用类型,单体内置对象。这种对象分别有:Global对象和Math对象。
Global对象是一个全局对象,所有不属于任何其他对象的属性和方法,最终都是它的属性和方法!它自身还包括很多其他一些方法。 ECMAScript并没有指出如何直接访问Global对象。但在浏览器中,全局对象作为window对象的一部分加以实现。也就是说,在浏览器上window就是全局对象。
Math对象提供了大量的数学计算方法,辅助我们完成复杂的数学计算任务。比如:随机数random(),绝对值abs(),最大值max(),最小值min().......
回归JavaScript基础(八)的更多相关文章
- 回归JavaScript基础(六)
主题:引用类型Date.RegExp的介绍. 上节主要主要介绍了Object.Array引用类型.这节将继续为大家介绍引用类型,并对书中的一些知识点进行总结与归纳,也借此巩固自己对JavaScript ...
- 回归JavaScript基础(一)
主题:JavaScript简介. 一.JavaScript的起源 JavaScript诞生于1995年.当时,它的主要作用是处理一些输入验证操作.之前的话,都是把表单数据发送到服务器端,然后再去判断有 ...
- 回归JavaScript基础(十)
主题:创建对象 原型模式 JavaScript中的每个对象都有一个prototype属性(原型属性),这个属性是一个指针,指向一个对象,而这个对象可以由一些属性和方法组成.被指向的对象,可以是多个对象 ...
- 回归JavaScript基础(九)
主题:理解对象,创建对象. 小明是一名程序猿,也是一条单身狗!他常常自嘲:每天都会有很多对象,但却没有女朋友! 多么痛的领悟.哈哈,目前比较流行的编程语言都是面向对象的语言(Object-Orient ...
- 回归JavaScript基础(七)
主题:引用类型Function的介绍. 今天首先说的就是Function类型.下面就是定义函数的两种方法,第一种使用函数声明语法定义,第二种使用函数表达式定义.这两种定义函数的方式几乎没有什么区别. ...
- 回归JavaScript基础(五)
主题:介绍引用类型Object.Array. 在上一章中,作者就在说变量的值的时候,提到过引用类型这个概念.JavaScript中存在基本类型和引用类型,其中引用类型很重要,这里有许多我们需要注意的东 ...
- 回归JavaScript基础(四)
主题:JavaScript变量.作用域和内存问题 JavaScript的变量和别的语言比起来是与众不同的.说道变量,不得不谈他的作用域.同很多语言一样,JavaScript开发者也不用担心开发中内存的 ...
- 回归JavaScript基础(三)
主题:JavaScript基本概念. 任何语言的核心必然会描述这门语言最基本的工作原理.这部分内容对我们来说,读起来很乏味,甚至会产生困意,但这部分内容却是重要的!我有幸拜读<JavaScrip ...
- 回归JavaScript基础(二)
主题:在HTML中使用JavaScript. 要想把JavaScript放到网页中,就必须涉及到Web的核心语言HTML.向HTML页面中插入JavaScript的主要方法,就是使用<scrip ...
随机推荐
- hibernate的配置文件,使用XML方式
<?xml version="1.0" encoding="UTF-8"?> <!-- 标准的XML文件的起始行,version='1.0'表 ...
- php中时间相差8小时的解决办法
引用:http://www.111cn.net/phper/31/42398.htm 在php中使用date('Y-m-d H:i:s');得出的结果会相差8个小时,原来是时区的问题 解决办法: 1. ...
- Java并发编程笔记之ThreadLocalRandom源码分析
JDK 并发包中 ThreadLocalRandom 类原理剖析,经常使用的随机数生成器 Random 类的原理是什么?及其局限性是什么?ThreadLocalRandom 是如何利用 ThreadL ...
- 多流向算法GPU并行化
和导师在Computers & Geosciences上发表的关于多流向算法GPU并行化的文章(SCI, IF=1.834). 论文:http://sourcedb.igsnrr.cas.cn ...
- linux之tmpfs
1.概述 tmpfs是ramfs的衍生品,ramfs是基于RAM的文件系统,不能使用swap空间:tmpfs可以动态释放空间.可以使用swap空间.ramfs不能控制使用内存的大小容易使内存爆掉:而t ...
- kafka-spark streaming (一)
Kafka-spark streaming 1.安装包 kafka安装需要zookeeper.jdk. 官网下载最新的: https://kafka.apache.org/downloads http ...
- UML——六大关系整理
UML——六大关系整理 1.定义 是一种面向对象的建模语言,它是运用统一的.标准化的标记和定义实现对软件系统进行面向对象的描述和建模(百度百科). 2.六种关系 这六种关系分别为,继承.实现.关联.聚 ...
- Extjs相关知识点梳理
store是一个为Ext器件提供record对象的存储容器,行为和属性都很象数据表 方法:不列举继承来的方法 Store( Object config ) 构造,config定义为{ autoLo ...
- Android 控件:使用下拉列表框--Spinner
---恢复内容开始--- 一.前段代码 <Spinner android:id="@+id/spin" android:paddingTop="10px" ...
- com.mysql.jdbc.MysqlDataTruncation: Data truncation: Truncated incorrect DOUBLE value:...
在使用mybatis的@Update注解的时候,报了一个这样的错 ### Error updating database. Cause: com.mysql.jdbc.MysqlDataTruncat ...