Обычно я стараюсь избегать всего, что может быть зарезервированным словом в большинстве языков, поэтому я не сталкивался с этим. Однако, учитывая все различия между синтаксисом CFScript и CFML, неудивительно, что зарезервированные слова также различаются. Список зарезервированных слов подтверждает, что ключевые слова для синтаксиса на основе сценариев отличаются от ключевых слов для синтаксиса на основе тегов .
Если подумать, единственная причина запретить определенные слова состоит в том, что они создают неоднозначность, которая препятствует точной оценке кода. Учитывая огромные различия между этими двумя синтаксисами, легко увидеть, как конкретное слово, такое как for
, может иметь особое значение в контексте CFScript, но быть совершенно безвредным при использовании в CFML. В этом сценарии нет технической причины, по которой проблемное слово должно быть также запрещено в CFML. Хотя Adobe могла бы изменить это поведение, честно говоря, я бы удивилась, если бы они это сделали, потому что это сломало бы большую часть существующего кода CFML ... включая ваш.
В конечном счете, CFML и CFScript - это два разных «языка» (из-за отсутствия лучшего слова). Хотя вы можете надеяться, что любой код CFML будет работать точно так же в CFScript, вы не можете зависеть от этого. Они очень разные звери. Поэтому ожидайте, что некоторые вещи будут работать в одном, а не в другом.