JavaScript基础学习(五)—其他引用类型
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基础学习(五)—其他引用类型的更多相关文章
- JavaScript 基础学习1-day14
JavaScript 基础学习1 知识预览JavaScript概述二 JavaScript的基础三 JavaScript的对象BOM对象DOM对象实例练习js扩展 JavaScript概述 JavaS ...
- 48.javascript基础学习
javascript基础学习: http://www.w3school.com.cn/jsref/index.asp jS的引入方式: 1.行间事件:为某一个具体的元素标签赋予js内容,oncli ...
- JavaScript 基础学习(二)js 和 html 的结合方式
第一种 使用一个标签 <script type="text/javascript"> js代码; </script> 第二种 使用 script 标签,引入 ...
- Python基础学习五
Python基础学习五 迭代 for x in 变量: 其中变量可以是字符串.列表.字典.集合. 当迭代字典时,通过字典的内置函数value()可以迭代出值:通过字典的内置函数items()可以迭代出 ...
- JavaScript 基础 学习 (四)
JavaScript 基础 学习 (四) 解绑事件 dom级 事件解绑 元素.on事件类型 = null 因为赋值的关系,所以给事件赋值为 null 的时候 事件触发的时候,就没有事件处理 ...
- JavaScript 基础 学习(三)
JavaScript 基础 学习(三) 事件三要素 1.事件源: 绑定在谁身上的事件(和谁约定好) 2.事件类型: 绑定一个什么事件 3.事件处理函数: 当行为发生的时候,要执行哪一个函数 ...
- JavaScript 基础 学习 (二)
JavaScript 基础 学习 节点属性 每一个节点都有自己的特点 这个节点属性就记录着属于自己节点的特点 1. nodeType(以一个数字来表示这个节点类型) 语法:节点.nodeT ...
- JavaScript 基础 学习 (一)
JavaScript 基础 学习 获取页面中的元素的方法 作用:通过各种方式获取页面中的元素 比如:id,类名,标签名,选择器 的方式来获取元素 伪数组: 长的和数组差不多,也是按照索引排 ...
- 几张非常有意义的JavaScript基础学习思维图
分享几张对于学习JavaScript基础知识非常有意义的图,无论你的JavaScript级别如何,“温故而知新”完全可以从这些图中得到. 推荐理由:归类非常好,非常全面 JavaScript 数组 J ...
随机推荐
- 《HelloGitHub月刊》第11期
<HelloGitHub>第11期 兴趣是最好的老师,<HelloGitHub>就是帮你找到兴趣! 简介 最开始我只是想把自己在浏览 GitHub 过程中,发现的有意思.高质量 ...
- Angular.js之指令学习笔记
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"& ...
- ARP攻击
ARP攻击,是针对以太网地址解析协议(ARP)的一种攻击技术,就是通过伪造IP地址和MAC地址实现ARP欺骗,能够在网络中产生大量的ARP通信量使网络阻塞.此种攻击可让攻击者取得局域网上的数据封包甚至 ...
- C# 字符串比较大小 string.Compare()方法
string.Compare方法,用来比较2个字符串值得大小 string.Compare(str1, str2, true); 返回值: 1 : str1大于str2 0 : str1等于str2 ...
- API抓屏
需调用API函数 需在开头引入命名空间 using System.Runtime.InteropServices; 获取当前窗口句柄:GetForegroundWindow() [DllImport( ...
- 使用postfix在debian上配置邮件服务器
如果debian中安装了exim4,先卸载exim4: apt-get remove exim4 安装postfix apt-get install postfix 安装完成后就可以测试下,PHP代码 ...
- <c>----<choose><when><otherwise>
<c:choose> <c:when test="${username== '1' && password== '2'}"> <jsp ...
- 4052: [Cerc2013]Magical GCD
4052: [Cerc2013]Magical GCD Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 148 Solved: 70[Submit][ ...
- 自定义 Layout布局 UICollectionViewLayout
from: http://www.tuicool.com/articles/vuyIriN 当我们使用系统自带的UICollectionViewFlowLayout无法实现我们的布局时,我们就可以 ...
- FineUIMvc随笔(6)对比WebForms和MVC中表格的数据库分页
声明:FineUIMvc(基础版)是免费软件,本系列文章适用于基础版. 通过对比WebForms和MVC中表格数据库分页代码的不同,可以对 MVC 中的数据流转有更加深入的了解. WebForms 中 ...