ECMAScript--2

数值扩展

//0. Number.EPSILON 是 JavaScript 表示的最小精度
//EPSILON 属性的值接近于2. 2204460492503130808472633361816E-16
function equal(a, b) {
    if (Math.abs(a - b) < Number.EPSILON) {
        return true;
    } else {
        return false;
    }
}
console.log(0.1 + 0.2 === 0.3); //false
console.log(equal(0.1 + 0.2, 0.3)); //true
//1. 二进制和八进制
let b = 0b1010; //10 二进制0b开头
let o = 0o777; //511 八进制0o开头
let d = 100; //100  十进制
let x = 0xff; //255 十六进制
console.log(x);

//2. Number.isFinite 检测一个数值是否为有限数
console.log(Number.isFinite(100)); // true 有限
console.log(Number.isFinite(100 / 0)); // false 无限
console.log(Number.isFinite(Infinity)); // false 无限

//3. Number.isNaN 检测一个数值是否为NaN
console.log(Number.isNaN(123));
//4. Number.parseInt Number.parseFloat 字符串转整数
console.log(Number.parseInt('123311aaa'));
console.log(Number.parseFloat('45516.441afaf'));
//5. Number.isInteger 判断一个数是否为整数
console.log(Number.isInteger(5));
console.log(Number.isInteger(2.5));
//6. Math.trunc 将数字的小数部分抹掉
console.log(Math.trunc(3.5));

对象方法扩展

//1. Object.is 判断两个值是否完全相等
console.log(Object.is(120, 120)); // ===
console.log(object.is(NaN, NaN)); // ===
console.log(NaN === NaN); // === 
//2. Object.assign 对象的合并
const config1 = {
    host: 'localhost',
    port: 3306,
    name: 'root ',
    pass: 'root',
    test: 'test'
};
const config2 = {
    host: 'http:/ /123.com',
    port: 33060,
    name: 'atguigu.com',
    pass: 'iloveyou'
}
console.log(Object.assign(config1, config2));
//3. Object.setPrototypeOf设置原型对象object.getPrototypeof 不建议 建议用create创建初就设置好
const school = {
    name: ' shuK'
}
const cities = {
    xiaoqu: ['北京', '上海', '深圳']
}
Object.setPrototypeOf(school, cities);
Object.getPrototypeOf(school);
console.log(school);

模块化

模块化是指将一个大的程序文件,拆分成许多小的文件,然后将小文件组合起来。

模块化的好处

模块化的优势有以下几点:

  1. 防止命名冲突
  2. 代码复用
  3. 高维护性

模块化规范产品

ES6之前的模块化规范有:

1)CommonJS => NodeJs、Browserify

2)AMD => requireJS

3)CMD => seaJS

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值