Реализация условного выражения в быстром интерфейсе

Поскольку я не допущу план фабрики YUI/Crockford и потому что мне нравится сохранять вещи сам содержавшими и расширяемыми, это - мое изменение:

function Person(params)
{
  this.name = params.name || defaultnamevalue;
  this.role = params.role || defaultrolevalue;

  if(typeof(this.speak)=='undefined') //guarantees one time prototyping
  {
    Person.prototype.speak = function() {/* do whatever */};
  }
}

var Robert = new Person({name:'Bob'});

то, где идеально тест typeof находится на чем-то как первый метод, моделировало

5
задан Michaël Larouche 27 July 2009 в 19:01
поделиться

1 ответ

Это известно как проблема завершения при сцеплении методов Попробуйте это

TicketRules
.RequireValidation()
.When(quartType => quartType == QuartType.Before,
      rule => rule.TotalMilageIs(64))
.When(quartType => quartType == QuartType.After,
      rule => rule.TotalMilageIs(128));

Поначалу это выглядит немного странно, но оно переносит ваши условные выражения в другую область видимости, чтобы вы могли их выполнять условно. Думайте об этом как о создании собственного блока if. Закрыв его, вы узнаете, когда можно «закончить» подвыражение.

3
ответ дан 15 December 2019 в 06:32
поделиться
Другие вопросы по тегам:

Похожие вопросы: