goldEli / Front-End-Training

Front End Training
2 stars 5 forks source link

JavaScript 变量类型 #30

Open goldEli opened 4 years ago

goldEli commented 4 years ago
  1. JavaScript 有哪些变量类型
  2. 写一个方法判断变量的类型(附上代码)

/**
 * 判断变量类型 
 * @param {any} 
 * @return {string}
 */
function jugementType(variable) {

}

// 比如
jugementType(3) // number
jugementType('3') // string 
jugementType({}) // object 
jugementType([]) // array 
FireDragonZL commented 4 years ago
lurasso commented 4 years ago

JS基本有5种简单数据类型:String,Number,Boolean,Null,undefined,Symbol(独一无二的值)。 引用数据类型Object,Array,Fuction

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

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>judge type</title>
</head>

<body>
    <script>
        /**
        * 判断变量类型 
        * @param {any} 
        * @return {string}
        */
        function jugementType(variable) {
            switch(Object.prototype.toString.call(variable)){
                case '[object Number]':
                return 'number'; break;
                case '[object String]':
                return 'string'; break;
                case '[object Boolean]':
                return 'boolean'; break;
                case '[object Array]':
                return 'array'; break;
                case '[object Object]':
                return 'object'; break;
                case '[object Function]':
                return 'function'; break;
                case '[object Undefined]':
                return 'undefined'; break;
                case '[object Null]':
                return 'null'; break;
                case '[object Date]':
                return 'date'; break;
                case '[object RegExp]':
                return 'regExp'; break;
                case '[object Error]':
                return 'error'; 
            }
        }
        // 比如
        console.log(jugementType(3));
        console.log(jugementType('3'));
        console.log(jugementType({}));
        console.log(jugementType([]));
    </script>
</body>

</html>
748580573 commented 4 years ago

简单数据类型:String,Number,Boolean,Null,undefined,Symbol(独一无二的值)。 引用数据类型Object,Array,Fuction

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

<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>

<body>

</body>

<script>

var a = Object.prototype.toString;
function jugementType(variable) {
    console.log(a.call(variable)); 
}

// 比如
jugementType(3) // number
jugementType('3') // string 
jugementType({}) // object 
jugementType([]) // array 
jugementType(null) // array 
</script>

</html>