原型和JS内置对象
原型
1.定义
- 每一个对象都有原型
- 原型仍然是一个对象
- 模拟实现面向对象的继承性
2.原型链
- 对象的原型还有原型
- 对象除了可以使用自有属性还可以继承原型上的属性
3.获取原型
对象.__proto__构造函数.prototype
4.操作原型的属性
- 原型本身就是对象,同操作对象
5.判断属性是自有的还是原型继承的
hasOwnProperty
6.ECMA5中创建对象并指定对象的原型
- Object.create();
JavaScript 内置对象
Boolean
1.创建方式
Boolean 对象用于转换一个不是 Boolean 类型的值转换为 Boolean 类型值 (true 或者false).
如果布尔对象无初始值或者其值为: 0,-0 , null, "" , false ,undefined , NaN
那么对象的值为 false。否则,其值为 true(即使当自变量为字符串 "false" 时)!
- 直接量
*var b = true; - 转换函数
var b2 = Boolean(true); - 构造函数
var b1 = new Boolean(false);
2.属性
- constructor
- console.log(b.constructor);
方法
- toString()
- valueOf() 返回原始值
console.log(n.valueOf());
Number
1.创建方式
- 直接量
- 转换函数
- 构造函数
2.属性
Number.MAX_VALUE
Number.MIN_VALUE
console.log(Number.MAX_VALUE)
console.log(Number.MIN_VALUE)
3.方法
toFixed() 保留指定位数的小数,默认保留整数
toExponential() 用科学技术法形式来表示
toString() 转为字符串,可以把十进制转化为任意进制的字符串
console.log(n.toFixed());
console.log(n.toExponential());
console.log(number.toString());
console.log(number.toString(8));//八进制
console.log(number.toString(16));//十六进制
console.log(number.toString(2));//二进制
String
1.创建方式
- 直接量
- 转换函数
- 构造函数
2.属性
- length 字符串长度
3.方法
- charAt(index) 返回指定位置的字符,可以用[]运算符代替
- charCodeAt(index) 返回指定位置的字符的编码
- String.fromCharCode() 把unicode编码转换为字符
- concat() 连接一个或多个字符串,可以被+运算符代替
- indexOf() 返回字符(串)在字符串中第一次出现的位置
- lastIndexOf() 返回字符(串)在字符串中最后一次出现的位置
- substr(start[,length])截取字符串
(开始索引的位置,截取长度) - substring(start [,end])
(开始索引的位置,结束索引的位置) - slice()同substring
- split() 把字符串分割成数组 根数组方式 arr.join()相反
- toUpperCase() 把字符串转换成大写
- toLowerCase() 把字符转换成小写
- trim() 去除字符串两边的空格
- replace() 在字符串中用某些字符替换另一些字符
- match() 查找找到一个或多个正则表达式的匹配
- search() 查找于正则表达式相匹配的值
Date
1.创建函数
- 构造函数
2.方法
- getYear()
- getFullYear()公元纪年从 Date 对象以四位数字返回年份。
- getMoth() 从0开始从 Date 对象返回月份 (0 ~ 11)。
- getDay() 从 Date 对象返回一周中的某一天 (0 ~ 6)。
- getDate() 从 Date 对象返回一个月中的某一天 (1 ~ 31)。
- getHours() 返回 Date 对象的小时 (0 ~ 23)。
- getMinutes() 返回 Date 对象的分钟 (0 ~ 59)。
- getSeconds() 返回 Date 对象的秒数 (0 ~ 59)。
- getMilliseconds() 返回 Date 对象的毫秒(0 ~ 999)。
- getTime() 从1970年1月1日0是0分0秒至今的毫秒数
- getTimezoneOffset() 与标准时区的偏移量单位是分钟
- getUTC......
- set......
- setUTC......
- toUTCString()
3.时间戳
- 从Unix元年至今的秒数或毫秒数
- Unix元年 1970年
Math
1.属性
- PI 圆周率
2.方法
abs() 求绝对值
sqrt() 求平方根
pow() 求几次方
max() 求最大值
min() 求最小值
round() 四舍五入取整
floor() 舍一取整
ceil() 进一取整
random() 返回 0 ~ 1 之间的随机数。
console.log(Math.random());for(var i=0;i<10;i++){
document.write(Math.random()+"<br>")
}
//random()*10 意思是产生0~10之间的小数 ,int(random()*10)的意思是强制取整,把小数部分去掉只去整数部分,所以 就变成了 产生0~9之间的整数。 console.log("0-9: "+Math.floor(Math.random()*10));
console.log("0-10: "+Math.round(Math.random()*10));
console.log("0-16的随机数: "+Math.floor(Math.random()*17));
console.log("6-25的随机数: "+(Math.floor(Math.random()*20)+6)); console.log("0-9之间的随机数: "+Math.floor(Math.random()*10000000%10));
原型和JS内置对象的更多相关文章
- JS内置对象的原型不能重定义?只能动态添加属性或方法?
昨天马上就快下班了,坐在我对面的同事突然问我一个问题,我说“爱过”,哈哈,开个玩笑.情况是这样的,他发现JS的内置对象的原型好像不能通过字面量对象的形式进行覆盖, 只能动态的为内置对象的原型添加属性或 ...
- web前端学习(四)JavaScript学习笔记部分(6)-- js内置对象
1.JS内置对象-什么是对象 1.1.什么是对象: JavaScript中的所有事物都是对象:字符串.数值.数组.函数 每个对象带有属性和方法 JavaScript允许自定义对象 1.2.自定义对象: ...
- js内置对象的常用属性和方法(Array | String | Date | Math)
js内置对象:Array String Math Date <!DOCTYPE html> <html lang="en"> <head> ...
- 4月5日--课堂笔记--JS内置对象
JavaScript 4.5 一. JS内置对象 1.数组Array a)创建语法1:var arr=new Array(参数); i. 没有参数:创建一个初始容量为0的数组 ii. ...
- JS内置对象有哪些?
JS内置对象分为数据封装类对象和其他对象 数据封装类对象:String,Boolean,Number,Array,和Object; 其他对象:Function,Arguments,Math,Date, ...
- JS内置对象-String对象、Date日期对象、Array数组对象、Math对象
一.JavaScript中的所有事物都是对象:字符串.数组.数值.函数... 1.每个对象带有属性和方法 JavaScript允许自定义对象 2.自定义对象 a.定义并创建对象实例 b.使用函数来定义 ...
- 5月15日上课笔记-js中 location对象的属性、document对象、js内置对象、Date事件对象、
location的属性: host: 返回当前主机名和端口号 定时函数: setTimeout( ) setInterval() 二.document对象 getElementById(); 根据ID ...
- js课程 3-9 js内置对象定时器和超时器怎么使用
js课程 3-9 js内置对象定时器和超时器怎么使用 一.总结 一句话总结:定时器: 1.定义 sobj=setInterval(func,1000); 2.清除 cl ...
- js课程 2-8 js内置对象有哪些
js课程 2-8 js内置对象有哪些 一.总结 一句话总结:JS中内置了17个对象,常用的是Array对象.Date对象.正则表达式对象.string对象.Global对象. 1.js常用对象有哪些? ...
随机推荐
- Nginx 配置 HTTPS自签名证书
工具: OpenSSL ssl的开源实现,几乎实现了市面上所有的加密 libcrypto: 通用加密库, 任何软件要实现加密功能 链接调用这个库 libssl: TLS/SSL 加密库 openssl ...
- linux文件系统(ext2)
一个磁盘可以划分成多个分区,每个分区必须先用格式化工具(例如某种mkfs命令)格式化成某种格式的文件系统,然后才能存储文件,格式化的过程会在磁盘上写一些管理存储布局的信息.下图是一个磁盘分区格式化成e ...
- Linux建立FTP服务器
http://blog.chinaunix.net/uid-20541719-id-1931116.html http://www.cnblogs.com/hnrainll/archive/2011/ ...
- Mybatis学习系列(七)缓存机制
Mybatis缓存介绍 MyBatis提供一级缓存和二级缓存机制. 一级缓存是Sqlsession级别的缓存,Sqlsession类的实例对象中有一个hashmap用于缓存数据.不同的Sqlsessi ...
- Aspose.Pdf合并PDF文件
使用Aspose.Pdf类库,有很多种方法可以合并PDF文件,这里简单介绍小生见到的几种: Doucment.Pages.Add PdfFileEditor.Append PdfFileEditor. ...
- Nginx学习笔记之应用篇
Nginx服务器的安装请参考Nginx学习笔记之安装篇 关于Nginx配置文档的API在这里就不一一列出,现在我们来配置第一个Nginx架构实现负载均衡的网站. 1.打开IIS,配置如下站点 重复上述 ...
- 【bzoj2006】[NOI2010]超级钢琴 倍增RMQ+STL-堆
题目描述 小Z是一个小有名气的钢琴家,最近C博士送给了小Z一架超级钢琴,小Z希望能够用这架钢琴创作出世界上最美妙的音乐. 这架超级钢琴可以弹奏出n个音符,编号为1至n.第i个音符的美妙度为Ai,其中A ...
- Android中有哪些好的开发框架?
在安卓开发中,框架的使用必不可少,合理利用一些好的开发框架,往往可以达到事半功倍的效果.本文小编就将和大家分享安卓开发者不得不知的5款框架,一起来看看吧,新技能get走起~~ 1.thinkAndro ...
- Codeforce 721C DP+DAG拓扑序
题意 在一个DAG上,从顶点1走到顶点n,路径上需要消费时间,求在限定时间内从1到n经过城市最多的一条路径 我的做法和题解差不多,不过最近可能看primer看多了,写得比较复杂和结构化 自己做了一些小 ...
- 【题解】SCOI2009围豆豆
很久之前就很想做的一道题,一直思考到今天才下定决心看题解.这道题中,很关键的一点就在于:如何判断一个点是否在一个多边形内?其实如果计算几何基本功扎实的话,应该是可以很快给出答案的(可惜我完全不行):由 ...