Позволяет ли CoffeeScript семантику JavaScript-style == equality?
Я люблю, что CoffeeScript компилируется ==
в JavaScript ===
оператор. Но что делать, если вы хотите оригинальный JS ==
семантика? Они доступны? Я изучил документацию и не могу найти ничего, что позволило бы это сделать.
в более общем плане, есть ли способ встроить простой JS в мой код CoffeeScript, чтобы компилятор не касался его?
Я бы предпочел избежать редактирования скомпилированного вывода JavaScript, так как я использую веселый для автоматического создания его в Visual Studio.
2 ответа:
как возможное расширение к этому, есть ли способ встроить блоки регулярного JS в код CoffeeScript, чтобы он не компилировался?
да вот документация. Вам нужно обернуть код JavaScript в backticks (
Источник В CoffeeScript [попробуй]`
). Это единственный способ для вас напрямую использовать JavaScript==
в CoffeeScript. Например:Составленный Яваскриптif `a == b` console.log "#{a} equals #{b}!"
if (a == b) { console.log("" + a + " equals " + b + "!"); }
конкретный случай
Источник В CoffeeScript [попробуй]== null
/undefined
/void 0
обслуживается постфиксным экзистенциальным оператором?
:Скомпилированный Код JavaScriptx = 10 console.log x?
Источник В CoffeeScript [попробуй]var x; x = 10; console.log(x != null);
Скомпилированный Код JavaScript# `x` is not defined in this script but may have been defined elsewhere. console.log x?
var x; console.log(typeof x !== "undefined" && x !== null);