借用数组对象的prototype给数组扩充降维方法

原理:只要是一个对象,他都有一个prototype原型对象,保存共有的属性和方法。

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>

<body>
    <script>
        //字符串法:
        let arr = new Array();
        Array.prototype.flatten = function () {
            let arrTemp = [];
            let result_str1 = this.join(',').split(',');  //此处的this指向,谁调用就指向谁?
            //join(',').split(',')  先依 ,转换成字符串,然后再依 ,转换成数组。
            arrTemp.push(result_str1)
            return arrTemp;
        }
        arr1 = [1,[1,3],2];
        console.log(arr1.flatten())

    </script>
</body>

</html>

猜你喜欢

转载自www.cnblogs.com/gzw-23/p/11746798.html