js单体内置对象
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单体内置对象的更多相关文章
- JS 单体内置对象
内置对象: 由ECMAScript提供的.不依赖于宿主环境的对象,这些对象在ECMAScript程序执行之前就已经存在了. 不必由开发人员显式地实例化内置对象 比如: Object Array Str ...
- 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)); ...
- RegExp类型,单体内置对象
1.RegExp类型: 1)什么是正则表达式:RegExp --是一种规则,模式 --强大的字符串匹配工具 --创建: --使用RegExp构造函数创建:var re=new ...
- Javascript高级编程学习笔记(18)—— 引用类型(7)单体内置对象
什么是内置对象呢? js高级程序设计中给出的定义为:由ES规定不依赖于宿主环境的对象,这些对象在JS执行前就已经存在 前面我们介绍的引用类型都是内置对象 除了这些对象外ECMA还规定了两个单体内置对象 ...
- DOM笔记(九):引用类型、基本包装类型和单体内置对象
一.Array 1 .创建数组的方式 //Array构造函数(可以去掉new) var colors0 = new Array(); var colors1 = new Array(20); var ...
- 《JavaScript 闯关记》之单体内置对象
ECMA-262 对内置对象的定义是「由 JavaScript 实现提供的.不依赖于宿主环境的对象,这些对象在 JavaScript 程序执行之前就已经存在了」.意思就是说,开发人员不必显式地实例化内 ...
- JavaScript高级编程———基本包装类型String和单体内置对象Math
JavaScript高级编程———基本包装类型和单体内置对象 <script> var stringObject = new String("hello world") ...
- js arguments 内置对象
1.arguments是js的内置对象. 2.在不确定对象是可以用来重载函数. 3.用法如下: function goTo() { var i=arguments.length; alert(i); ...
- javascript学习笔记 - 引用类型 单体内置对象
七 单体内置对象 1.Global对象 不属于任何对象的属性和方法,都归于它.全局作用域中定义的变量.函数,都属于Global对象 1.1 URI编码 encodeURI <=>deco ...
随机推荐
- 如何检查Windows网络通信端口占用
最近本地测试jsp程序发现tomcat启动失败,无法监听8080端口,也没记得别的什么程序占用了8080端口,干脆就改成了8090端口先用着.今天找了找Windows上查看网络通信端口占用的方法. 先 ...
- MAC上ITERM2配置SZ, RZ远程上传和下载文件
MAC上ITERM2配置SZ, RZ远程上传和下载文件 From article 在Windows上的SecureCRT.XShell远程连接Linux服务器,通常可以使用sz.rz等命令来上传和下载 ...
- WEBGL学习【八】模型视图投影矩阵
<!--探讨WEBGL中不同图形的绘制方法:[待测试2017.11.6]--> <!DOCTYPE HTML> <html lang="en"> ...
- Project Euler 43 Sub-string divisibility
题意: 1406357289是一个0至9全数字数,因为它由0到9这十个数字排列而成:但除此之外,它还有一个有趣的性质:子串的可整除性.记d1是它的第一个数字,d2是第二个数字,依此类推,我们注意到: ...
- 训练1-B
杭州人称那些傻乎乎粘嗒嗒的人为62(音:laoer). 杭州交通管理局经常会扩充一些的士车牌照,新近出来一个好消息,以后上牌照,不再含有不吉利的数字了,这样一来,就可以消除个别的士司机和乘客的心理障碍 ...
- FCN图像分割
一. 图像语义分割 传统的图像分割方法主要包括以下几种: 1)基于边缘检测 2)基于阈值分割 比如直方图,颜色,灰度等 3)水平集方法 这里我们要说的是语义分割,什么是语义分割呢?先来看张图: 将目标 ...
- ORA-29857: 表空间中存在域索引和/或次级对象
今天小编在操作 oracle 数据库,删除表空间时引发了异常!! SQL> drop tablespace nbmap including contents; 为什么会造成以上的异常呢? 根据小 ...
- yii 正则验证
required : 必须值验证属性 [['字段名'],required,'requiredValue'=>'必填值','message'=>'提示信息']; #说明:CRequiredV ...
- java的数组index[]方括号内是可以进行算数运算的
java的数组index[]方括号内饰可以进行算数运算的 如: String[] stringArray = testString.split("\\."); System.out ...
- [Asp.net]EF更新之后要 保存
数据库那边保存表 项目里保存模型