用js实现typeof的功能
"使用 JavaScript 实现 `typeof` 的功能可以通过以下代码来实现:

```javascript
function myTypeof(value) {
return Object.prototype.toString.call(value).slice(8, -1).toLowerCase();
}
```

上述代码中,我们定义了一个 `myTypeof` 函数,它接收一个参数 `value`,代表要检测类型的值。在函数内部,我们使用 `Object.prototype.toString.call(value)` 来获取值的原始类型。

`Object.prototype.toString` 方法返回一个表示对象的字符串,格式为 `[object 类型]`,其中 `类型` 代表值的原始类型。通过使用 `slice` 方法,我们截取字符串的第 8 个字符到倒数第 1 个字符,即得到原始类型。最后使用 `toLowerCase` 方法将类型转换为小写字母。

以下是一些示例用法:

```javascript
console.log(myTypeof(42)); // \"number\"
console.log(myTypeof(\"Hello\")); // \"string\"
console.log(myTypeof(true)); // \"boolean\"
console.log(myTypeof([])); // \"array\"
console.log(myTypeof({})); // \"object\"
console.log(myTypeof(null)); // \"null\"
console.log(myTypeof(undefined)); // \"undefined\"
```

通过调用 `myTypeof` 函数并传入不同的值,我们可以获取它们的原始类型。

需要注意的是,由于 JavaScript 中的函数和对象都可以被称为对象,因此使用 `myTypeof` 函数对函数和对象进行类型检测时,会返回 `\"function\"` 和 `\"object\"`。此外,对于 `null` 值,由于历史原因,`typeof` 运算符会返回 `\"object\"`,而不是
展开
1