Diferença entre Object.prototype.hasOwnProperty.call e {} .hasOwnProperty.call. (Regra de eslint guard-for-in)

Na regra eslintguarda para dentro , usarfor in diretamente está incorreto. A boa prática é

for (key in foo) {
    if (Object.prototype.hasOwnProperty.call(foo, key)) {
        doSomething(key);
    }
    if ({}.hasOwnProperty.call(foo, key)) {
        doSomething(key);
    }
}

Minha pergunta é quandoObject.prototype.hasOwnProperty.call(foo, key) e{}.hasOwnProperty.call(foo, key) levará resultado diferente? Alguém pode mostrar um exemplo específico?

questionAnswers(1)

yourAnswerToTheQuestion