函数封装和Math对象

函数封装使用

  • 先创建common.js文件

例子:

/* 
    *author:xxx
    *作用:获取非行间样式和行间样式
    *params   elem              标签   
    *params   attr    String    样式名
*/
function  getStyle(elem,attr){
    if(window.getComputedStyle){ //标准浏览器
       return  window.getComputedStyle(elem)[attr];
    }else{//IE低版本浏览器
       return    elem.currentStyle[attr];
    }
}

  • 然后在页面中使用

 

<script src="./common.js"></script>  用script标签引入js文件

<body>
    <div style="color: red;font-size: 20px;"></div>
    <script>
        console.log(getStyle)
        var oDiv = document.getElementsByTagName("div")[0]
        var a = getStyle(oDiv, "color");
        console.log(a);
        var b = getStyle(oDiv, "fontSize");
        console.log(b);
    </script>
</body>

Math对象:

对象概念

  • 对象: 在JS中万物皆对象,可以将对象分为“内部对象”、“宿主对象”和“自定义对象”三种。

    • 本地对象「内部对象」:JS中的内部对象包括Array、Boolean、Date、Function、Global、 Math、Number、Object、RegExp、String,Error对象, 其中Global和Math这两个对象又被称为“内置对象”,这两个对象在脚本程序初始化时被创建,不必实例化这两个对象。

    • 宿主对象:宿主对象就是执行JS脚本的环境提供的对象,就是浏览器提供的对象,如window和document

    • 自定义对象

  • API

    • API,全称Application Programming Interface,即应用程序编程接口。说白了就是别人提供好的函数,但是这些函数都是封装好的,固定功能的,可以直接调用实现功能的。 例如遥控器,不同的按键不同的功能,都是提前定义好的

    • 5.1 取整

    • parseInt 强制转换Number类型 从左往右开始转换 遇到不能转换的或者末尾结束 如果一开始就不能转换则是NaN 结果取整

    • Math.floor 向下取整 舍弃小数部分

    • Math.ceil 向上取整 有小数就进位

    • Math.round 四舍五入 取整

  • 例子:

 

<script>
        // 1.Math对象 是内置对象   不需要实例化即可使用
        console.log(Math);
        // 2.取整
        // parseInt   强制转换Number类型  从左往右开始转换 遇到不能转换的或者末尾结束 如果一开始就不能转换则是NaN  结果取整
        console.log(parseInt("123px"));//123
        console.log(parseInt("10.5px"));//10
        console.log(parseInt("adc123"));//NaN
        // Math.floor  向下取整  舍弃小数部分
        console.log(Math.floor(10.5));// 10
        console.log(Math.floor(10.9));// 10
        console.log(Math.floor(3.9999999));// 10
        console.log(Math.floor(3.000000000001));// 10

        // Math.ceil  向上取整  有小数就进位
        console.log(Math.ceil(10.5));//11
        console.log(Math.ceil(10.1));//11
        console.log(Math.ceil(3.9999999));//4
        console.log(Math.ceil(3.00000001));//4

        // Math.round  四舍五入   取整 
        console.log(Math.round(3.4)); //3
        console.log(Math.round(3.5));// 4
        console.log(Math.round(3.00000001));//3
        console.log(Math.round(3.09999001));//3

    </script>

5.2 数学方法

  • Math.max(数值1,数值2......) 找序列中最大的值

  • Math.min(数值1,数值2......) 找序列中最小的值

  • Math.abs( ) 取绝对值

  • Math.sqrt( ) 开根号

  • Math.pow(num,n) 次方幂 num底数 n n次幂

 // 1.数学方法
        // Math.max(数值1,数值2......) 找序列中最大的值
        console.log(Math.max(1,2,3,4,5));//5

        // Math.min(数值1,数值2......) 找序列中最小的值
        console.log(Math.min(1,2,3,4,5));//1

        // Math.abs  取绝对值
        console.log(Math.abs(-10));// 10

        // Math.sqrt()  开根号
        console.log(Math.sqrt(9));//3
        console.log(Math.sqrt(81));//9

        // Math.pow(num,n)  次方幂  num底数 n n次幂
        console.log(Math.pow(2,10));// 1024
        console.log(Math.pow(10,2));// 100

5.3 随机数

  • Math.random() 随机生成0-1之间的数 包括0 不包括1

  • 公式 生成min到max之间的随机数

    • Math.random() * (max-min+1) + min

<script>
        var a =  Math.random(); //随机0-1之间的数
        console.log(a);
        //1. 随机1-10之间的数据  Math.random() * (max-min+1) + min
        var b = Math.floor( Math.random() * 10 + 1  )  //  [1  11]   
        console.log(b);

</script>

随机抽奖案例:

  var arr = ["玛莎拉蒂","宾利","北京2套房","上海汤臣一品","十月一能买到车票回家"]
        // 0-4(arr.length-1)     求0到arr.length-1之间的随机数
        var index =Math.floor( Math.random() * (arr.length-1-0+1) + 0 );
        console.log(arr[index])

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 好的,那我们可以用一个名为 "util" 的对象封装这些函数,例如: ``` const util = { add: function(a, b) { return a + b; }, subtract: function(a, b) { return a - b; }, multiply: function(a, b) { return a * b; }, divide: function(a, b) { return a / b; } }; ``` 然后你就可以通过访问 "util.add(a, b)" 来使用加法函数了。你也可以继续往这个对象里添加其他常用的函数。 需要注意的是,以上代码假设你使用的是 ES6 语法,如果你使用的是 ES5 语法,你需要把 "function" 换成 "var"。 ### 回答2: 封装一个常用的JavaScript函数集合是为了提高开发效率和代码的重用性。这个函数集合可以包含各种常用的功能函数,例如: 1. 获取URL参数值:可以封装一个函数,通过传入参数名,返回对应的URL参数值。比如,可以使用window.location.search获取URL参数字符串,然后再使用正则表达式或其他方法找到对应的参数值。 2. 时间格式化:封装一个函数,将时间对象转换为指定格式的字符串。比如,可以使用Date对象方法获取年月日、时分秒等信息,然后根据需要进行格式化输出。 3. 随机数生成:可以封装一个函数,生成指定范围内的随机整数或随机浮点数。比如,可以使用Math.random函数生成0到1之间的随机数,然后根据需要进行相应的运算转换。 4. 数组元素查找:可以封装一个函数,根据指定条件在数组中查找元素,并返回符合条件的元素或索引值。比如可以使用Array的filter方法根据判定函数找到满足条件的元素。 5. 数据类型判断:可以封装一个函数,判断变量的数据类型并返回相应的字符串表示。比如,可以使用typeof运算符判断基本数据类型,使用Array.isArray判断数组类型,使用Object.prototype.toString判断复杂数据类型。 6. 字符串截取:可以封装一个函数,对字符串进行截取操作,根据指定参数截取指定长度的字符串,同时提供省略号等处理方式。 7. 表单验证:可以封装一些常用的表单验证函数,例如验证邮箱、手机号码、用户名等。这些函数可以使用正则表达式或其他验证方式进行验证,以提高代码的可读性和可维护性。 以上只是一些常见的封装函数示例,实际的常用函数集合可以根据具体需求进行扩展和定制。 ### 回答3: 常用的JavaScript函数集合可以提供一组常见功能的封装,以便在开发过程中更便捷地调用这些函数。下面是一个封装了一些常用功能的常用JavaScript函数集合例子: 1. 获取URL参数:这个函数可以从URL中获取指定参数的值并返回。可以通过传递参数名来获取不同的参数值。 2. 格式化日期:这个函数可以将日期对象或日期字符串格式化为指定的日期格式。可以通过参数来指定所需的日期格式。 3. 判断空值:这个函数可以判断一个变量是否为空(包括未定义、null、空字符串等),返回true或false。 4. 随机数生成:这个函数可以生成一定范围内的随机数,可以通过传递参数指定范围。 5. 数组去重:这个函数可以对数组进行去重操作,并返回去重后的数组。 6. 节流函数:这个函数可以控制函数的频率,在指定的时间间隔内只执行一次。 7. 深度拷贝对象:这个函数可以实现深度拷贝一个对象,返回一个拷贝后的新对象。 8. 字符串截取:这个函数可以截取指定长度的字符串,并在结尾添加省略号。 9. 图片预加载:这个函数可以实现图片的预加载,防止图片未加载完全时导致页面闪烁。 10. 防抖函数:这个函数可以控制函数的执行频率,在指定的时间间隔内,只有最后一次触发才执行。 这些是常用的JavaScript函数集合的一些例子,通过封装这些功能,可以使开发过程更高效、便捷。可以根据需要自定义封装适合自己的常用功能函数集合。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值