【JavaScript】内置对象 ③ ( Math 内置对象 | Math 内置对象简介 | Math 内置对象的使用 )

文章目录

  • [一、Math 内置对象](#一、Math 内置对象)
    • [1、Math 内置对象简介](#1、Math 内置对象简介)
    • [2、Math 内置对象的使用](#2、Math 内置对象的使用)
  • 二、代码示例
    • [1、代码示例 - Math 内置对象的使用](#1、代码示例 - Math 内置对象的使用)
    • [2、代码示例 - 封装 Math 内置对象](#2、代码示例 - 封装 Math 内置对象)

一、Math 内置对象


1、Math 内置对象简介

JavaScript 中的 Math 内置对象 是一个 全局对象 , 该对象 提供了 常用的 数学常数 和 数学计算函数 ;

利用 Math 对象 的 函数和常数 , 可以完成各种数学运算任务 , 如 :

  • 获取最大 / 最小值
  • 求绝对值
  • 随机数生成
  • 三角函数计算
  • 对数计算
  • 取整

Math 文档地址 : https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Math

2、Math 内置对象的使用

Math 不是 构造函数 , 其所有的 属性 和 方法 都是静态的 , 不需要使用 new 操作符

JavaScript 引擎初始化完毕后 , 该 Math 内置对象就会被创建 , 可以直接调用 Math 对象 ;

在代码中 , 可以直接 通过调用

  • Math.属性名
javascript 复制代码
        // 打印 Math 内置对象的常量
        // 输出 : 3.141592653589793
        console.log(Math.PI)
  • math.方法名()
javascript 复制代码
        // 调用 Math 内置对象的方法
        // 输出 : 3
        console.log(Math.max(1, 2, 3))

的方式 , 调用该 Math 内置对象的 属性 和 方法 ;

二、代码示例


1、代码示例 - Math 内置对象的使用

完整代码示例 :

html 复制代码
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <!-- 设置 meta 视口标签 -->
    <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no,maximum-scale=1.0,minimum-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>JavaScript</title>
    <style></style>
    <script>
        // 打印 Math 内置对象的常量
        // 输出 : 3.141592653589793
        console.log(Math.PI)

        // 调用 Math 内置对象的方法
        // 输出 : 3
        console.log(Math.max(1, 2, 3))
    </script>
</head>

<body>
</body>

</html>

执行结果 :

2、代码示例 - 封装 Math 内置对象

自己自定义一个对象 , 封装 一个 自定义数学计算对象 , 提供 圆周率 值 属性 , 和 求 最大值 的方法 ;

参考 【JavaScript】对象 ① ( 对象概念 | 对象使用场景 | 使用字面量创建对象 | 空对象字面量 | 小括号 / 中括号 / 大括号 作用 ) 博客 , 使用字面量创建对象 代码 ;

javascript 复制代码
var person = {  
    name: "Tom",  
    age: 18,  
    hello: function() {  
        return this.name+ " is " + this.age + " years old";  
    }  
};

完整代码示例 :

html 复制代码
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <!-- 设置 meta 视口标签 -->
    <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no,maximum-scale=1.0,minimum-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>JavaScript</title>
    <style></style>
    <script>
        var math = {
            // 封装 圆周率 属性
            PI: Math.PI,

            // 封装 求最大值的方法
            max: function() {
                // 此处不知道输入多少个参数 , 使用 arguments 获取不同个数的实参
                var max = arguments[0]
                for (var i = 0; i < arguments.length; i++) {
                    if (arguments[i] > max) {
                        max = arguments[i]
                    }
                }
                return max
            }
        }

        // 调用自定义对象的属性
        console.log(math.PI)

        // 调用自定义对象的方法
        console.log(math.max(9, 5, 2, 7))
    </script>
</head>

<body>
</body>

</html>

执行结果 :

相关推荐
gopyer12 分钟前
180课时吃透Go语言游戏后端开发6:Go语言的循环语句
开发语言·游戏·golang·循环语句
江拥羡橙1 小时前
Vue和React怎么选?全面比对
前端·vue.js·react.js
千码君20161 小时前
React Native:快速熟悉react 语法和企业级开发
javascript·react native·react.js·vite·hook
楼田莉子3 小时前
Qt开发学习——QtCreator深度介绍/程序运行/开发规范/对象树
开发语言·前端·c++·qt·学习
暮之沧蓝3 小时前
Vue总结
前端·javascript·vue.js
木易 士心4 小时前
Promise深度解析:前端异步编程的核心
前端·javascript
im_AMBER4 小时前
Web 开发 21
前端·学习
又是忙碌的一天4 小时前
前端学习day01
前端·学习·html
韩立学长4 小时前
【开题答辩实录分享】以《基于python的奶茶店分布数据分析与可视化》为例进行答辩实录分享
开发语言·python·数据分析
Joker Zxc4 小时前
【前端基础】20、CSS属性——transform、translate、transition
前端·css