js单体内置对象:js的内置对象,是ECMAScritp提供的、不依赖于宿主环境的对象,我的理解就是在我们开发之前js里面就已经存在的对象。单体内置对象就是是不需要通过new来实例化的,例如我们的string可以new,但是Math是不要new的,因为可以直接使用Math的API。

一、Global 对象

Global 对象是JavaScript中的内部对象,该对象无法直接访问,其目的是将全局方法收集到一个对象中。我们直接使用该对象的属性和方法即可。

1.global对象的属性

属性 描述
Infinity 特殊值表示正的无穷大。
NaN 特殊值表示非数字值。
undefined 特殊值表示一个变量未被初始化。

2.global对象的方法

(1)URI(通用资源标识符)编码方法。使用特殊的utf-8编码对uri进行编码,替换无效字符,是浏览器能够理解。

encodeURI():函数不会对下列字符进行编码:":"、"/"、";"和"?"。

encodeURIComponent():函数会编码所有的字符。如果你想把URI当作请求参数传递,那么你可以使用本函数

// 原URI
var uri = "http://www.365mini.com/page/tag/中国近代史的前车之鉴"; // 编码URI
var encodedUri = encodeURI( uri );
document.writeln( encodedUri );
// http://www.365mini.com/page/tag/%E4%B8%AD%E5%9B%BD%E8%BF%91%E4%BB%A3%E5%8F%B2%E7%9A%84%E5%89%8D%E8%BD%A6%E4%B9%8B%E9%89%B4 // 编码URI组件
var encodedUri = encodeURIComponent( uri );
document.writeln( encodedUri );
// http%3A%2F%2Fwww.365mini.com%2Fpage%2Ftag%2F%E4%B8%AD%E5%9B%BD%E8%BF%91%E4%BB%A3%E5%8F%B2%E7%9A%84%E5%89%8D%E8%BD%A6%E4%B9%8B%E9%89%B4

encodeURI():函数不会对下列字符进行编码:":"、"/"、";"和"?",函数用于对统一资源标识符(URI)进行编码,并返回编码后的URI字符串。

encodeURIComponent():函数用于对统一资源标识符(URI)的有效组件进行编码,并返回编码后的字符串。函数会编码所有的字符

//原URI组件
var uri = "http://www.365mini.com/page/tag/中国近代史的前车之鉴"; // 编码URI组件
var encodedUri = encodeURIComponent( uri );
document.writeln( encodedUri );
// http%3A%2F%2Fwww.365mini.com%2Fpage%2Ftag%2F%E4%B8%AD%E5%9B%BD%E8%BF%91%E4%BB%A3%E5%8F%B2%E7%9A%84%E5%89%8D%E8%BD%A6%E4%B9%8B%E9%89%B4 // 编码URI
var encodedUri = encodeURI( uri );
document.writeln( encodedUri );
// http://www.365mini.com/page/tag/%E4%B8%AD%E5%9B%BD%E8%BF%91%E4%BB%A3%E5%8F%B2%E7%9A%84%E5%89%8D%E8%BD%A6%E4%B9%8B%E9%89%B4

(2)evel():函数用于计算并执行以字符串表示的JavaScript代码。eval()函数使JS可以动态执行JavaScript源代码

var code = "var x = 18; y = 12; document.writeln(x + y);";
eval( code ); // 30 code = " 2 + 3";
var result = eval( code );
document.writeln( result ); // 5

二、Math对象

Math对象是JavaScript中内置的一个全局对象,它主要提供一些基本的、常用的数学函数和常数。

Math对象上均是静态函数和静态常量属性,因此Math对象没有构造函数,也不需要创建它(不需要new新的对象),直接使用Math的属性和方法即可。

math对象的属性:

E:返回数学常量 e,即自然对数的底数(约等于2.718)。

LN10:返回 10 的自然对数(约等于2.303)。

LN2:返回 2 的自然对数(约等于0.693)。

LOG10E:返回以 10 为底的 e 的对数(即log10e,约等于0.434)。

LOG2E:返回以 2 为底的 e 的对数(即log2e,约等于 1.414)。

PI:返回圆周率π(约等于3.14159)。

document.write(Math.PI); // 3.141592653589793

SQRT1_2:返回 0.5 的平方根,也就是 2 的平方根的倒数(约等于 0.707)。

SQRT2:返回 2 的平方根(约等于 1.414)。

Math对象的方法:

abs(x):返回数的绝对值。
acos(x) :返回数的反余弦值。
asin(x) :返回数的反正弦值。
atan(x) :以介于 -π/2 与 π/2 弧度之间的数值来返回 x 的反正切值。
atan2(y,x): 返回从 x 轴到点 (x,y) 的角度(介于 -π/2 与 π/2 弧度之间)。
ceil(x) :对数进行上舍入。
cos(x) :返回数的余弦。
exp(x) :返回 e 的指数。
floor(x) :对数进行下舍入。
log(x):返回数的自然对数(底为e),即logex。
max(x,y):返回 x 和 y 中的最高值。
min(x,y):返回 x 和 y 中的最低值。
pow(x,y): 返回 x 的 y 次幂。
random(): 返回 0 ~ 1 之间(不包括 1)的随机数。
round(x):把数四舍五入为最接近的整数。
sin(x):返回数的正弦值。
sqrt(x): 返回数的平方根。
tan(x) :返回角的正切值。

// 多个参数时,返回最大的数
document.writeln( Math.max( -1, 2.1, 10.5, 7 ) ); // 10.5 document.writeln( Math.sqrt( 9 ) ); // 3

js单体内置对象的更多相关文章

  1. JS 单体内置对象

    内置对象: 由ECMAScript提供的.不依赖于宿主环境的对象,这些对象在ECMAScript程序执行之前就已经存在了. 不必由开发人员显式地实例化内置对象 比如: Object Array Str ...

  2. JS单体内置对象之Math常用方法(min,max,ceil,floor,round,random等)

    1.min()和max()方法 Math.min()用于确定一组数值中的最小值.Math.max()用于确定一组数值中的最大值. alert(Math.min(2,4,3,6,3,8,0,1,3)); ...

  3. RegExp类型,单体内置对象

    1.RegExp类型:  1)什么是正则表达式:RegExp    --是一种规则,模式    --强大的字符串匹配工具    --创建:    --使用RegExp构造函数创建:var re=new ...

  4. Javascript高级编程学习笔记(18)—— 引用类型(7)单体内置对象

    什么是内置对象呢? js高级程序设计中给出的定义为:由ES规定不依赖于宿主环境的对象,这些对象在JS执行前就已经存在 前面我们介绍的引用类型都是内置对象 除了这些对象外ECMA还规定了两个单体内置对象 ...

  5. DOM笔记(九):引用类型、基本包装类型和单体内置对象

    一.Array 1 .创建数组的方式 //Array构造函数(可以去掉new) var colors0 = new Array(); var colors1 = new Array(20); var ...

  6. 《JavaScript 闯关记》之单体内置对象

    ECMA-262 对内置对象的定义是「由 JavaScript 实现提供的.不依赖于宿主环境的对象,这些对象在 JavaScript 程序执行之前就已经存在了」.意思就是说,开发人员不必显式地实例化内 ...

  7. JavaScript高级编程———基本包装类型String和单体内置对象Math

    JavaScript高级编程———基本包装类型和单体内置对象 <script> var stringObject = new String("hello world") ...

  8. js arguments 内置对象

    1.arguments是js的内置对象. 2.在不确定对象是可以用来重载函数. 3.用法如下: function goTo() { var i=arguments.length; alert(i); ...

  9. javascript学习笔记 - 引用类型 单体内置对象

    七 单体内置对象 1.Global对象 不属于任何对象的属性和方法,都归于它.全局作用域中定义的变量.函数,都属于Global对象 1.1 URI编码  encodeURI <=>deco ...

随机推荐

  1. 洛谷P3195 [HNOI2008]玩具装箱TOY 斜率优化

    Code: #include<cstdio> #include<algorithm> using namespace std; const int maxn = 100000 ...

  2. Windows GUI程序自动化之pywinauto

    一. pywinauto知识点总结 官方英文版文档网址:https://pywinauto.readthedocs.io/en/latest/index.html 1.1 pywinauto的安装与配 ...

  3. HDU2188 - 悼念512汶川大地震遇难同胞——选拔志愿者【巴什博弈】

    对于四川同胞遭受的灾难,全国人民纷纷伸出援助之手,几乎每个省市都派出了大量的救援人员,这其中包括抢险救灾的武警部队,治疗和防疫的医护人员,以及进行心理疏导的心理学专家.根据要求,我校也有一个奔赴灾区救 ...

  4. 关于参数net_buffer_length How MySQL Uses Memory

    http://dev.mysql.com/doc/refman/5.6/en/memory-use.html The following list indicates some of the ways ...

  5. 操作服务器及MySQL数据库可以使其远程链接

    转自原文操作服务器及MySQL数据库可以使其远程链接 一般情况分三个地方准备,MySQL数据库,防火墙,还有你的服务器主机的准备 操作系统为centos6.5.其他系统大致差不多. 1:在服务器中安装 ...

  6. Java Pattern Matcher 正则表达式需要转义的字符

    见:http://blog.csdn.net/bbirdsky/article/details/45368709 /** * 转义正则特殊字符 ($()*+.[]?\^{},|) * * @param ...

  7. POJ 2111

    记忆化搜索即可,设DP[I][J]为可到达的最大步数. 输出时用了一种较笨拙的方法,还有一种方法是使用最长上升子序列的方式,挺好,先排序,这让我想起上次BESTCODER的一题 #include &l ...

  8. 清除eclipse中的SVN账号信息

    清除eclipse中的SVN账号信息 参考了:http://blog.csdn.net/ningtieming/article/details/60469346 需要先在资源管理器中使用Tortois ...

  9. 【Dubbo实战】基础学习篇(一)

    Dubbo的简单介绍 是什么? Dubbo是阿里巴巴SOA服务化治理方案的核心框架,每天为2,000多个服务提供30多亿次訪问量支持.并被广泛应用于阿里巴巴集团的各成员网站. Dubbo是一个分布式服 ...

  10. JavaScript的那些坑之变量提升

    想总结一下JS的变量提升特性,都是由于一道题.先上题. var name = 'World!'; (function () { if (typeof name === 'undefined') { v ...