第二十二天到第二十四天:JavaScript里面的居民们

一、Number 对象


创建 Number 对象的语法:

var myNum=new Number(value);
var myNum=Number(value);

参数

参数 value 是要创建的 Number 对象的数值,或是要转换成数字的值。

返回值

当 Number() 和运算符 new 一起作为构造函数使用时,它返回一个新创建的 Number 对象。如果不用 new 运算符,把 Number() 作为一个函数来调用,它将把自己的参数转换成一个原始的数值,并且返回这个值(如果转换失败,则返回 NaN)。

Number 对象属性

属性描述
constructor返回对创建此对象的 Number 函数的引用。
MAX_VALUE可表示的最大的数。
MIN_VALUE可表示的最小的数。
NaN非数字值。
NEGATIVE_INFINITY负无穷大,溢出时返回该值。
POSITIVE_INFINITY正无穷大,溢出时返回该值。
prototype使您有能力向对象添加属性和方法。

Number 对象方法

方法描述
toString把数字转换为字符串,使用指定的基数。
toLocaleString把数字转换为字符串,使用本地数字格式顺序。
toFixed把数字转换为字符串,结果的小数点后有指定位数的数字。
toExponential把对象的值转换为指数计数法。
toPrecision把数字格式化为指定的长度。
valueOf返回一个 Number 对象的基本数字值

二、Math 对象


使用 Math 的属性和方法的语法:

var pi_value=Math.PI;
var sqrt_value=Math.sqrt(15);

注释:Math 对象并不像 Date 和 String 那样是对象的类,因此没有构造函数 Math(),像 Math.sin() 这样的函数只是函数,不是某个对象的方法。您无需创建它,通过把 Math 作为对象使用就可以调用其所有属性和方法。

Math 对象属性

属性描述
E返回算术常量 e,即自然对数的底数(约等于2.718)。
LN2返回 2 的自然对数(约等于0.693)。
LN10返回 10 的自然对数(约等于2.302)。
LOG2E返回以 2 为底的 e 的对数(约等于 1.414)。
LOG10E返回以 10 为底的 e 的对数(约等于0.434)。
PI返回圆周率(约等于3.14159)。
SQRT1_2返回返回 2 的平方根的倒数(约等于 0.707)。
SQRT2返回 2 的平方根(约等于 1.414)。

Math 对象方法

方法描述
abs(x)返回数的绝对值。
acos(x)返回数的反余弦值。
asin(x)返回数的反正弦值。
atan(x)以介于 -PI/2 与 PI/2 弧度之间的数值来返回 x 的反正切值。
atan2(y,x)返回从 x 轴到点 (x,y) 的角度(介于 -PI/2 与 PI/2 弧度之间)。
ceil(x)对数进行上舍入。
cos(x)返回数的余弦。
exp(x)返回 e 的指数。
floor(x)对数进行下舍入。
log(x)返回数的自然对数(底为e)。
max(x,y)返回 x 和 y 中的最高值。
min(x,y)返回 x 和 y 中的最低值。
pow(x,y)返回 x 的 y 次幂。
random()返回 0 ~ 1 之间的随机数。
round(x)把数四舍五入为最接近的整数。
sin(x)返回数的正弦。
sqrt(x)返回数的平方根。
tan(x)返回角的正切。
toSource()返回该对象的源代码。
valueOf()返回 Math 对象的原始值。

四、排序



  • 排序编码任务

  var arr = [43, 54, 4, -4, 84, 100, 58, 27, 140];
        //将上面数组分别按从大到小以及从小到大进行排序后在console中输出
        console.log(arr.sort((a,b)=>a - b));

        var arr2 = ['apple', 'dog', 'cat', 'car', 'zoo', 'orange', 'airplane'];
        //将上面数组分别按字母顺序a-z及z-a进行排序,在console中输出
        console.log(arr.sort());
        console.log(arr.reverse());
        

        var arr3 = [[10, 14], [16, 60], [7, 44], [26, 35], [22, 63]];
       //将上面的二维数组,按照每个元素中第二个数从大到小的顺序进行排序输出,输出结果应该为:[[22, 63], [16, 60], [7, 44], [26, 35], [10, 14]]
        console.log(arr3.sort((a,b)=>b[1]-a[1]));
           var arr4 = [
        {
            id: 1,
            name: 'candy',
            value: 40
        }, {
            id: 2,
            name: 'Simon',
            value: 50
        }, {
            id: 3,
            name: 'Tony',
            value: 45
        }, {
            id: 4,
            name: 'Annie',
            value: 60
        }
    ]; 
    //将上面数组分别按元素对象的value值从小到大进行排序后输出  
    console.log(arr4.sort((a,b)=>a.value-b.value));

五、数组、对象转换

        var scoreObject = {
    "Tony": {
        "Math": 95,
        "English": 79,
        "Music": 68
    }, 
    "Simon": {
        "Math": 100,
        "English": 95,
        "Music": 98
    }, 
    "Annie": {
        "Math": 54,
        "English": 65,
        "Music": 88
    }
}
  var scoreArray = [];
  for (let i in scoreObject) {
      var arr1 = [];
      arr1.push(i);
      for(let j in scoreObject[i]){
          arr1.push(scoreObject[i][j]);
      }
      scoreArray.push(arr1);
  }
  console.log(scoreArray);
  

总结、

  • 四舍五入、常用的有round。今天学了toFixed():
JavaScript toFixed() 方法
JavaScript Number 对象

定义和用法
toFixed() 方法可把 Number 四舍五入为指定小数位数的数字。
  • 绝对值、abs()
定义和用法
abs() 方法可返回数的绝对值。

语法
Math.abs(x)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值