JavaScript定义了两个内置对象: Global和Math。

一、Global对象

1.URI编码方法

     Global对象的encodeURI()和encodeURIComponent()方法可以对URI进行编码,以便发送给浏览器。有效的URI不能包含某些字符,例如空格,这个两个URI编码方法可以对URI进行编码,用特殊的UTF-8编码替换所有无效的字符,从而让浏览器能够接受和理解。

     这两个方法的主要区别是: encodeURI()不会对本书属于URI的特殊字符进行编码,例如:冒号、正斜杠、问号和井号。

                                           encodeURIComponent()则会对它发现的任何非标准字符进行编码。

            var uri = "http://www.baidu.com";
var str1 = encodeURI(uri);
var str2 = encodeURIComponent(uri); alert(str1); // http://www.baidu.com
alert(str2); // http%3A%2F%2Fwww.baidu.com alert(decodeURI(str1)); // http://www.baidu.com
alert(decodeURIComponent(str2)); // http://www.baidu.com

 

2.eval()方法

     eval()方法是是一个完整的JavaScript解析器,它只接受一个参数,即要执行的JavaScript字符串。当解析器发现代码中调用eval()方法时,它会将传入的参数当作实际的JavaScript语句来解析,然后把执行结果插入到原位置。

			var str = "var a = 10; var b = 10";
eval(str);
alert(a + b); //20 eval("function say(){ alert('Hi'); }");
say();

 

二、Math对象

1.min和max方法

     这两个方法用于确定一组数值中的最大值和最小值,这两个方法可以接受任何多个数值参数。

			var max = Math.max(11,1,2,20,3);
alert(max); //20 var min = Math.min(11,1,2,20,3);
alert(min); //1

     这两个方法经常用于避免多余的循环和在if语句中确定一组数的最大和最小值。要找数组的最值可以使用下面apply()方法。

			var arr = [9,0,8,1,7,2,6,3,5,4];
var max = Math.max.apply(Math,arr);
var min = Math.min.apply(Math,arr);
alert("max = " + max); //9
alert("min = " + min); //0

 

2.random()方法

     Math.random()方法返回介于0和1之间的一个随机数,不包括0和1.

     值 = Math.floor(Math.random() * 区间值的总数量 + 第一个值)

     例如2到10,总共九个数。可以这么写。

			var num = Math.floor(Math.random * 9 + 2);

 

			function randomNum(low,uper){
var a = uper - low + 1;
return Math.floor(Math.random() * a + low);
} var num = randomNum(2,10);
alert(num); //2到10之间的一个数

          Math类的其他方法

    

 

三、Date类型

1.创建对象

var date = new Date();

2.常用方法

getDate(): 返回一个月中的某一天 (1 ~ 31) 
getDay(): 返回一周中的某一天 (0 ~ 6) 
getMonth() : 返回月份 (0 ~ 11) 
getFullYear() : 以四位数字返回年份 
getTime() : 返回 1970 年 1 月 1 日至今的毫秒数 
parse() : 返回1970年1月1日午夜到指定日期(字符串)的毫秒数 
toLocaleString() : 根据本地时间格式,把 Date 对象转换为字符串。 
toLocaleDateString(): 根据本地时间格式,把 Date 对象的日期部分转换为字符串

			var date = new Date();
alert(date); // Wed Apr 27 2016 17:46:26 GMT+0800
alert(date.toLocaleString());// 2016/4/27 下午5:50:37
alert(date.toLocaleDateString());// 2016/4/27 var year = date.getFullYear();
var month = date.getMonth() + 1;
var day = date.getDate();
var hour = date.getHours();
var minute = date.getMinutes();
var seconds = date.getSeconds();
//北京时间: 2016年4月27日17:59:47
alert("北京时间: " + year + "年"+ month + "月" + day + "日" + hour + ":" + minute + ":" + seconds);

JavaScript基础学习(五)—其他引用类型的更多相关文章

  1. JavaScript 基础学习1-day14

    JavaScript 基础学习1 知识预览JavaScript概述二 JavaScript的基础三 JavaScript的对象BOM对象DOM对象实例练习js扩展 JavaScript概述 JavaS ...

  2. 48.javascript基础学习

    javascript基础学习:   http://www.w3school.com.cn/jsref/index.asp jS的引入方式: 1.行间事件:为某一个具体的元素标签赋予js内容,oncli ...

  3. JavaScript 基础学习(二)js 和 html 的结合方式

    第一种 使用一个标签 <script type="text/javascript"> js代码; </script> 第二种 使用 script 标签,引入 ...

  4. Python基础学习五

    Python基础学习五 迭代 for x in 变量: 其中变量可以是字符串.列表.字典.集合. 当迭代字典时,通过字典的内置函数value()可以迭代出值:通过字典的内置函数items()可以迭代出 ...

  5. JavaScript 基础 学习 (四)

    JavaScript 基础 学习 (四) 解绑事件 dom级 事件解绑 ​ 元素.on事件类型 = null ​ 因为赋值的关系,所以给事件赋值为 null 的时候 ​ 事件触发的时候,就没有事件处理 ...

  6. JavaScript 基础 学习(三)

    JavaScript 基础 学习(三) 事件三要素 ​ 1.事件源: 绑定在谁身上的事件(和谁约定好) ​ 2.事件类型: 绑定一个什么事件 ​ 3.事件处理函数: 当行为发生的时候,要执行哪一个函数 ...

  7. JavaScript 基础 学习 (二)

    JavaScript 基础 学习 节点属性 ​ 每一个节点都有自己的特点 ​ 这个节点属性就记录着属于自己节点的特点 1. nodeType(以一个数字来表示这个节点类型) ​ 语法:节点.nodeT ...

  8. JavaScript 基础 学习 (一)

    JavaScript 基础 学习 获取页面中的元素的方法 作用:通过各种方式获取页面中的元素 ​ 比如:id,类名,标签名,选择器 的方式来获取元素 ​ 伪数组: ​ 长的和数组差不多,也是按照索引排 ...

  9. 几张非常有意义的JavaScript基础学习思维图

    分享几张对于学习JavaScript基础知识非常有意义的图,无论你的JavaScript级别如何,“温故而知新”完全可以从这些图中得到. 推荐理由:归类非常好,非常全面 JavaScript 数组 J ...

随机推荐

  1. URLencode 特殊字符 转义 遇上的坑

    在项目中遇到一个问题,在webveiw和原生之间进行传值的时候,出现了一些encode的小问题.看起来很简单的问题,实际上却存在不小的坑. 首先说一下目前项目的结构,在一个activity中,webv ...

  2. 【转】搜索引擎选择: Elasticsearch与Solr

    原文地址:http://i.zhcy.tk/blog/elasticsearchyu-solr/ Elasticsearch简介 Elasticsearch是一个实时的分布式搜索和分析引擎.它可以帮助 ...

  3. Ubuntu14.04: Error found when loading /root/.profile

    问题描述: 启用root账号登录后系统出现如下提示信息: Error found when loading /root/.profile stdin:is not a tty 解决方法: 在终端中用命 ...

  4. TableView 多余分割线的处理

    方法一,以下两个方法的实现 - (void)viewDidLoad { [super viewDidLoad]; self.tableView.tableFooterView = [[UIView a ...

  5. 【Unity编程】Unity中的欧拉旋转

    欧拉角的定义 在写这篇博客之前,我搜索了网上很多关于欧拉角的定义,发现大部分引用自维基百科的定义,我这里也引述一下: 维基百科定义 莱昂哈德·欧拉用欧拉角来描述刚体在三维欧几里得空间的取向.对于任何参 ...

  6. JAVA-FTP批量大文件传输

    FTP的具体使用      FTP是一种网络协议,用于进行不同服务器主机之间的文件传输,或者简单地说两台不同IP的机器之间的文件传输.在java中我们什么时候需要用到FTP文件传输呢?比如两台服务器的 ...

  7. KoaHub平台基于Node.js开发的Koa的skip插件代码详情

    koahub-skip koahub skip middleware koahub skip Conditionally skip a middleware when a condition is m ...

  8. (0)写给Web初学者的教案-----Web基础

    0,Web基础 一.    What is the Web? Can It Eat? 很多同学可能都听说过一个名词叫做“Web”,这个词隐隐约约好像和我们上网相关.但是呢,又很难说的清楚.我们今天每位 ...

  9. calling c++ from golang with swig--windows dll(一)

    calling c++ from golang with swig--windows dll 之前项目组开发的项目核心代码全部使用C++语言,新项目可能会引入golang,花了一天多时间研究了wind ...

  10. 2017 Android 面试题 [ 基础与细节 ]

    2017 Android 面试题 [ 基础与细节 ] 感谢@chuyao抛出的这些问题,平时业务代码写多了,很多基础的东西变得含糊不清了,这次裸辞出来找工作确实没有之前顺利,顺便求上海Android开 ...