3.4 Iteration

在Jade中和JavaScript一样可以使用迭代器,在官方文档中说Jade支持两种主要的迭代器:eachwhile,另外还有一个for,用法和each相同。

3.4.1 each

通过each迭代器可以快速迭代数组和对象,并且可以获取数组的索引和对象的键:

each.jade:

ul
  each val in [1, 2, 3, 4, 5]
    li= val

each.html:

<ul>
  <li>1</li>
  <li>2</li>
  <li>3</li>
  <li>4</li>
  <li>5</li>
</ul>

上面的例子只是简单的迭代获取数组中的内容,下面的这个例子将同时获取数组的索引和对应的内容:

each2.jade:

ul
  each val, index in ['zero', 'one', 'two']
    li= index + ': ' + val

each2.html:

<ul>
  <li>0: zero</li>
  <li>1: one</li>
  <li>2: two</li>
</ul>

在免费送一个同时获取对象中键和值得例子吧:

each3.jade:

ul
  each val, index in {1:'one',2:'two',3:'three'}
    li= index + ': ' + val

each3.html:

<ul>
  <li>1: one</li>
  <li>2: two</li>
  <li>3: three</li>
</ul>

同样,上边的几个例子中的each完全可以可以使用for来替换,for可以被作为each的别名来使用。

3.4.2 while

除了使用each之外还有就是可以使用while来循环,用法也很简单。

while.jade:

- var n = 0
ul
  while n < 4
    li= n++

while.html:

<ul>
  <li>0</li>
  <li>1</li>
  <li>2</li>
  <li>3</li>
</ul>

这就是while的用法,和其他语言的使用方法几乎都是一样的。

Copyright © terrynie.com 2016 all right reserved,powered by Gitbook该文件修订时间: 2016-04-01 16:34:26