原型和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));