Javascript 我可以像其他对象一样扩展未定义的对象吗?

Javascript 我可以像其他对象一样扩展未定义的对象吗?,javascript,Javascript,我想为String对象创建一个方法,用于检查它是否未定义: String.prototype.isDefined = (str) => typeof str === 'undefined'; 尽管如此,如果字符串未定义,我不能使用此方法,否则JavaScript将中断,并且它将始终为真。我想知道是否可以以类似的方式扩展未定义的对象。我试过: undefined.prototype.isDefined = () => false; 但它似乎不起作用 我知道我可以写一个函数,但目的是

我想为String对象创建一个方法,用于检查它是否未定义:

String.prototype.isDefined = (str) => typeof str === 'undefined';
尽管如此,如果字符串未定义,我不能使用此方法,否则JavaScript将中断,并且它将始终为真。我想知道是否可以以类似的方式扩展未定义的对象。我试过:

undefined.prototype.isDefined = () => false;
但它似乎不起作用

我知道我可以写一个函数,但目的是更干净、更容易阅读的代码。

不,你不能。未定义不是对象,而是值

您不可能编写检查字符串是否未定义的函数。如果未定义,则它不是字符串。没有定义

我看不出有什么东西不干净或不可读

function isDefined(x) { return x !== undefined; }

整个概念没有意义。你想解决什么问题?我想去掉这个函数:isDefined:obj,value=>{iftypeof obj==='undefined'{return!value;}否则{return value;}},我甚至可以做isDefined x=>x!==未定义;事实上,这种语法是非常不正确的。我想你的意思是var被定义为=x=>x!==未定义;。