1. /**
    2. * 返回数据类型
    3. *
    4. * @return "null", "undefined",
    5. * @return "Number", "String", "Boolean", "Symbol",
    6. * @return "Array", "Object", "Function", "RegExp"
    7. *
    8. */
    9. let _toString = Object.prototype.toString;
    10. function toRawType (value) {
    11. console.log("_toString.call(value)", _toString.call(value))
    12. return _toString.call(value).slice(8, -1)
    13. }
    14. let configs = {
    15. defNull: null,
    16. defUndefined: undefined,
    17. num: 20,
    18. str: 'abcjsdkjdsjkfls',
    19. bol: true,
    20. arr: [1, 2],
    21. sym: Symbol('hei'),
    22. person: {
    23. age: 18
    24. },
    25. fn: (_) => (_),
    26. reg: /^Chapter [1-9][0-9]{0,1}/
    27. }
    28. for (let key in configs) {
    29. let val = configs[key]
    30. console.log(val, toRawType(val))
    31. }