Пожалуйста, несите меня, потому что я новичок в JavaScript, и мне был дан этот код, чтобы попытаться улучшить его, чтобы любой ввод полезен. Мне сказали перечислить некоторые проблемы или проблемы, которые вы видите с кодом. До сих пор я вижу, что:Я хотел бы улучшить свой код условия JavaScript
Использование двойного оператора равное равенство сравнить объект со строкой не может быть лучшим решением
если TYPEOF данные == «объект»
Также, пожалуйста, предположим, что предполагается PeopleFactory определено по всему миру
Не стесняйтесь разобрать код. Было бы очень полезно. Благодаря
var Person_D = function Person_D(name) {
//assume PeopleFactory is defined globally
//getDetailsAsync returns either null or a record with specific name.
PeopleFactory.getDetailsAsync(name, function(data) {
if (typeof data !== 'object') {
throw new Error('No record found for this individual.');
}
this.name = data.name;
this.age = data.age || 'No age data available.';
this.eyeColor = data.eyeColor || "This individual's eye color data is not listed.";
this.height = data.size.height || "No height specified.";
});
return this;
}
var personD = new Person_D('Jana');
console.log(personD.name);
'TypeOf data' не является объектом. Это вопрос интервью? – JJJ
Я голосую, чтобы закрыть этот вопрос не по теме, потому что он принадлежит [Code Review] (http://codereview.stackexchange.com/) (если есть). Прежде чем отправлять его, прочитайте их [Asking] (http://codereview.stackexchange.com/help/dont-ask). –
В чем проблема с использованием typeof? – epascarello