如何在if使用coffeescript中使用JS typeof运算符?

时间:2012-11-27 16:10:03

标签: javascript coffeescript

我需要将一段JavaScript代码翻译成CoffeeScript,这里是:

jQuery(function($) {
if (typeof ($.fn.jCarouselLite) != 'undefined') {
  $("#slider_1").jCarouselLite({
    btnNext: "#slider_1 .next",
    btnPrev: "#slider_1 .prev",
    visible: 1
  });
}

if条件导致问题,这就是我当时正在做的事情:

jQuery ->
  $ = jQuery
    if typeof $.fn.jCarouselLite not 'undefined'
      $("#slider_1").jCarouselLite
        btnNext: "#slider_1 .next
        btnPrev: "#slider_1 .prev"
        visible: 1

但是编译器抱怨说: PARSE ERROR ON LINE 2:意外的'POST_IF'

任何人都可以帮助我吗?如何正确地将If条件转换为Coffeescript?

谢谢,

2 个答案:

答案 0 :(得分:4)

not是一元运算符,所以我认为你的意思是

if typeof $.fn.jCarouselLite isnt 'undefined'

...但您可以使用?

if $.fn.jCarouselLite?

...但是这个错误似乎是由于有趣的缩进造成的,就像第2行......

答案 1 :(得分:1)

尝试unless并使用括号:

jQuery ($) ->
  unless typeof ($.fn.jCarouselLite) is "undefined"
    $("#slider_1").jCarouselLite
      btnNext: "#slider_1 .next"
      btnPrev: "#slider_1 .prev"
      visible: 1

顺便说一句,您可以使用http://js2coffee.org/

快速查看内容