js 数组array 对象 小数点后2位 toFixed() 替换 二维数组 替换键值

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js 数组array 对象 小数点后2位 toFixed() 替换 二维数组 替换键值相关的知识,希望对你有一定的参考价值。

有一个对象:
obj =c:aa:[1,2,3,4],bb:[1.1,2.2,3.3],cc:[1.11,2.22,3.33]
现在想把里面的数字全部保留小数点后2位,请问各位该怎么做?

参考技术A <script>
obj =
c:
aa: [1, 2, 3, 4],
bb: [1.1, 2.2, 3.3],
cc: [1.11, 2.22, 3.33]

;
let c: aa, c: bb, c: cc = obj;
let foo = fn =>
if (Array.isArray(fn))
for (let i = 0; i < fn.length; i++)
foo(fn[i]);

else
let x = fn.toFixed(2);
console.log(x);

;
let a = aa.concat(bb, cc);
foo(a);
</script>
代码如上,首先用解构赋值把对象里面的数字全部取出来,之后用for方法把获得的所有对象的值依次取出来,之后保留两位小数,输出的x就是处理后的
参考技术B //转换函数
function myfixed(obj) 
    var type = Object.prototype.toString.call(obj);
    if (type === '[object Number]')
        return obj.toFixed(2);
    
    if (type === '[object String]') 
        var value = +obj;
        return isNaN(value) ? obj : value.toFixed(2);
    
    
    if (type === '[object Array]')
        return obj.map(function (value) 
            return myfixed(value);
        );

    if (type === '[object Object]')
        for (var key in obj) 
        obj[key] = myfixed(obj[key]);
    
    
    return obj;


//测试(楼主的例子不够典型,为了加强测试,构造了更复杂的结构)
var obj = 
    c: 
        aa: [1, 2, 3, 4],
        bb: [1.1, 2.2, 3.3],
        cc: [1.11, 2.222, 3.33]
    ,
    x: [1, 1.5, 1.55, 1.564, 1.565, '2.566', true, null, x: [1, 2, 3],[1, 2, 3]]
;

var result = myFixed(obj);
console.log(result);

本回答被提问者采纳

js的数组对象

array数组

创建方式:1、arr1=[1,"hello",[11,2],"name":"lin"

      2、arr2=new Arry()

      3、arr3=new Arry(1,"world",true,[1,2,3]

concat添加

数组排序 reverse()反转  sort()最高位排序

splice() 删除子数组

push pop 栈操作,后进先出,在数组末位增删

shift unshift 栈操作,后进先出,在数组首位增删

 

技术图片
    //-------------------------------Array-----------------------------

//    //创建方式
//    var arr1=[1,"hello",[11,2],"name":"Yuan"];
//    var arr2=new Array(3);
//    var arr3=new Array(1,"world",true,[1,2,3]);
//
//    console.log(typeof arr1);
//    console.log(typeof arr2);
//    console.log(typeof arr3);
//
//    // 注意: var arr4=new Array(10) 10是size
//    console.log(arr1.length);

    //Array对象的方法
    //join方法
//    var arr5=[1,2,3,4,"1234"];
//    var ret=arr5.join("**");
//    console.log(ret);
//    console.log(typeof ret)

    //toString()
//    var ret2=arr1.toString();
//    console.log(ret2);
//    console.log(typeof ret2);

    //concat()
//        var arr5=[1,2,3];
//        var ret3=arr5.concat([5,66]);
//
//        console.log(ret3);
//        console.log(typeof ret3);

    //reverse
    // var arr6=[23,45,37,88];
//    var arr6=[10,45,100,88];
//
//    console.log(arr6.reverse());
//    console.log(arr6.sort()) ;   //10,45,88,100
//
//    function f(a,b) 
//
//        if(a>b)
//            return 4
//        
//        else if(a<b)
//          return -4
//        
//        else 
//            return 0
//        
//    
//
//    function f2(a,b) 
//        return a-b
//    
//
//    console.log(arr6.sort(f2))

    //push pop:栈操作

//    var arr7=[1,2,3];
//    arr7.push([7,8,0]);
//    arr7.push("hello",5);
//    console.log(arr7);
//    console.log(arr7.length);
//
//    console.log(arr7.pop());
//    console.log(arr7.pop());
//    console.log(arr7.length);

    //shift unshift: 栈操作

//    var arr8=[4,5,6];
//    arr8.unshift([11,222]);
//    arr8.unshift(true,"yes");//[true,"yes",[11,22],4,5,6]
//
//    arr8.shift();//["yes",[11,22],4,5,6]
//    console.log(arr8);
//    console.log(arr8.length)
View Code

 

技术图片技术图片技术图片技术图片技术图片技术图片技术图片技术图片技术图片技术图片技术图片技术图片技术图片技术图片技术图片技术图片技术图片技术图片

 

以上是关于js 数组array 对象 小数点后2位 toFixed() 替换 二维数组 替换键值的主要内容,如果未能解决你的问题,请参考以下文章

js怎样判断价格小数点后最多2位

numpy 排序,随机数,保留小数

js 怎么截取后面2位小数点?

js校验输入0-1之间的小数,最多保留小数点后两位

数据类型

使扣除结果包含2位小数