JavaScript内置对象

一、原型

1.定义

  • 每一个对象都有原型
  • 原型仍然是一个对象
  • 模拟实现面向对象的继承性

2.原型链

  • 对象的原型还有原型
  • 对象除了可以使用自有属性还可以继承原型上的属性

3. 获取原型

  • 对象.proto
  • 构造函数.prototype

4.操作原型的属性

  • 原型本身就是对象,同操作对象

5.判断属性是自有的还是原型继承的

  • hasOwnProperty()

    console.log(arr.hasOwnProperty("length"));
    console.log(arr.hasOwnProperty("push"));
    

6.ECMA5中创建对象并指定对象的原型

  • Object.create();

    //ECMA5
    var o = Object.create(arr);
    
    console.log(o);
    console.log(o.constructor);
    console.log(o.__proto__);
    

一、 Boolean

1.创建方式

  • 直接量
  • 转换函数
  • 构造函数

    var b = true;//直接量
    var b1 = new Boolean(false);//构造函数
    var b2 = Boolean(true);//转换函数
    

2.属性

  • constructor

3.方法

  • toString():把布尔值转换为字符串形式并返回
  • valueOf() 返回原始值

二、Number

1.创建方式

  • 直接量
  • 转换函数
  • 构造函数

2.属性

  • Number.MAX_VALUE 最大值
  • Number.MIN_VALUE 最小值

3.方法

  • toFixed() 保留指定位数的小数, 默认保留整数
  • toExponential() 用科学计数法形式来表示
  • toString() 转为字符串。 可以把十进制转换为任意进制的字符串

    <script>
        var n = 100.8976;
    
        console.log(Number.MAX_VALUE)
        //返回1.7976931348623157e+308
        console.log(Number.MIN_VALUE)
        //返回5e-324
    
        console.log(n);
        //返回100.8976
        console.log(n.toFixed(2));
        //返回100.90
        console.log(n.toFixed());
        //返回101
        console.log(n.toExponential());
        //返回1.008976e+2
    
        var number = 90;
    
        console.log("");
        console.log(number);
        //返回90
        console.log(number.toString());
        //返回90
        console.log(number.toString(8));
        //返回132
        console.log(number.toString(16));
        //返回5a
        console.log(number.toString(2));
        //返回1011010
    </script>
    

三、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() 查找字符串 可用正则
  • valueOf()返回字符串原始值

四、Date

1.创建date

  • 构造函数

2.方法

  • getYear()
  • getFullYear() 公元纪年
  • getMonth() 月份 从0开始(0~11)
  • getDay() 周几 周日(0~6)周六
  • getDate() 日
  • getHours() 时
  • getMinutes() 分
  • getSeconds() 秒
  • getMilliseconds() 毫秒
  • getTime() 从1970年1月1日0时0分0秒 至今的毫秒数
  • getTimezoneOffset() 与标准时区的偏移量单位是分钟
  • getUTC.....标准时区
  • set...
  • setUTC...
  • toTimeString() 把 Date 对象的时间部分转换为字符串。
  • toDateString() 把 Date 对象的日期部分转换为字符串。
  • toUTCStirng() 根据世界时,把 Date 对象转换为字符串。
  • toLocaleString() 根据本地时间格式,把 Date 对象转换为字符串。
  • toLocaleTimeString() 根据本地时间格式,把 Date 对象的时间部分转换为字符串。
  • toLocaleDateString() 根据本地时间格式,把 Date 对象的日期部分转换为字符串。

    <script>
        var date = new Date();
    
        date.setHours(7);
    
        console.log(date);
    
        console.log("当前的年:"+date.getYear());
        console.log("当前的年(公元纪年):"+date.getFullYear());
        console.log("当前的月份:"+(date.getMonth() + 1));
        console.log("当前的日(星期几):"+date.getDay());
        console.log("当前的日:"+date.getDate());
    
        console.log("当前的时:"+date.getHours());
        console.log("当前的分:"+date.getMinutes());
        console.log("当前的秒:"+date.getSeconds());
        console.log("当前的毫秒:"+date.getMilliseconds());
    
        console.log("");
        console.log("当前的时间戳:"+date.getTime());
    
        console.log(date.getTimezoneOffset());
        console.log("标准时区:"+date.getUTCHours());
    
        console.log(date.toUTCString());
    </script> 
    

3.时间戳

  • 从Unix元年至今的秒数或毫秒数
  • Unix元年 1970年

五、Math

1.属性

  • PI 圆周率

2.方法

  • abs(x) 求绝对值
  • sqrt(x) 求平方根
  • pow(x,y) 返回x的y次幂
  • max(x1,x2,...) 求最大值
  • min(同上) 求最小值
  • round(x) 四舍五入取整
  • floor(x) 舍一取整
  • ceil(x) 进一取整
  • random() 返回0~1之间的随机数

    <script>
        console.log(Math);      
        console.log(Math.PI);
    
        console.log("绝对值:"+Math.abs(100.45))
        console.log("绝对值:"+Math.abs(-100.45))
    
        console.log("pow求次幂:"+Math.pow(2, 9));
        console.log("求最大值:"+Math.max(10,23,4,23,12));
        console.log("求最小值:"+Math.min(10,23,4,23,12));
        console.log("开方:"+Math.sqrt(4));
        console.log("开方:"+Math.sqrt(10));
    
        //取整数 方法
        console.log(Math.round(12.345));
        console.log(Math.round(12.545));
    
        //进一取整
        console.log(Math.ceil(12.001));
    
        //舍一取整
        console.log(Math.floor(12.9999));
    </script>
    

六、Array

属性

  • length 数组长度

方法

  • concat() 数组连接
  • join() 数组转换成字符串
  • slice() 截取数组中的一部分
  • reverse() 数组的翻转
  • push() 在数组的最后一个位置添加元素
  • pop() 最后一个位置删除
  • shift() 数组最前面删除
  • unshift() 数组最前面增加元素
  • splice() 在数组任意位置增加或删除
  • sort() 排序 arr.sort(function(item1,item2){ //return item1-item2; return item1>item2; });

ECMA5 新增的方法

  • forEach() 遍历数组
  • map() 对数组中的每个元素进行处理
  • filter() 对数组的元素进行过滤
  • every() 检测所有元素是否都复合条件
  • some() 判断数组中是否与元素符合条件
  • indexOf() 元素第一次出现的位置
  • lastIndexOf() 最后一次出现的位置 //遍历 arr.forEach(function(val,key){ console.log(key + ':'+val); })

    //把数组中的每个元素都除以10 var res=arr.map(function(val){ return val/10; }) console.log(res);

    //对数组中的数进行过滤(只取偶数) var res=arr.filter(function(val){ return val%2===0; }) console.log(res);

    //判断数组中的每个元素是否都满足条件 var res=arr.every(function(val){ return val>1; }); console.log(res);

    //判断数组中是否有满足条件的 var res=arr.some(function(val){ return val>300; }) console.log(res);

七、内置对象 Function

属性

  • length 形参的数量

方法

  • apply() 将函数作为一个对象的方法调用
  • call() 将函数作为对象的方法调用
  • bind() ECMA5新增 返回一个作为方法调用的函数

八、全局对象 Global

在浏览器中就是window
原文地址:https://www.cnblogs.com/zgh929/p/7435058.html