- CoffeeScript 教程
- CoffeeScript - 主頁
- CoffeeScript - 概述
- CoffeeScript - 環境
- CoffeeScript - 命令列實用程式
- CoffeeScript - 語法
- CoffeeScript - 資料型別
- CoffeeScript - 變數
- CoffeeScript - 運算子和別名
- CoffeeScript - 條件語句
- CoffeeScript - 迴圈
- CoffeeScript - 解析
- CoffeeScript - 函式
- CoffeeScript 面向物件
- CoffeeScript - 字串
- CoffeeScript - 陣列
- CoffeeScript - 物件
- CoffeeScript - 範圍
- CoffeeScript - Splat
- CoffeeScript - 日期
- CoffeeScript - 數學
- CoffeeScript - 異常處理
- CoffeeScript - 正則表示式
- CoffeeScript - 類和繼承
- CoffeeScript 高階
- CoffeeScript - Ajax
- CoffeeScript - jQuery
- CoffeeScript - MongoDB
- CoffeeScript - SQLite
- CoffeeScript 實用資源
- CoffeeScript - 快速指南
- CoffeeScript - 實用資源
- CoffeeScript - 討論
CoffeeScript - 列表解析
在 CoffeeScript 中,我們還可以在一個數組中儲存一組物件。列表解析常用於將一個物件陣列對映到另一個數組。
語法
假設我們有一個 CoffeeScript 物件陣列,例如 [{key1: "value", key2: value}, {key1: "value", key2: value}],那麼你可以如下使用列表解析來迭代這些元素。
for key,value of [ {key1: "value", key2: value}, {key1: "value", key2: value} ]
console.log key+"::"+value
示例
以下示例演示了 CoffeeScript 提供的列表解析的用法。將此程式碼儲存在名為 list_comprehensions.coffee 的檔案中
students =[
name: "Mohammed"
age: 24
phone: 9848022338
,
name: "Ram"
age: 25
phone: 9800000000
,
name: "Ram"
age: 25
phone: 9800000000
]
names = (student.name for student in students)
console.log names
開啟命令提示符,然後如下編譯 .coffee 檔案。
c:\> coffee -c list_comprehensions.coffee
編譯後,它會生成以下 JavaScript。
// Generated by CoffeeScript 1.10.0
(function() {
var names, student, students;
students = [
{
name: "Mohammed",
age: 24,
phone: 9848022338
}, {
name: "Ram",
age: 25,
phone: 9800000000
}, {
name: "Ram",
age: 25,
phone: 9800000000
}
];
names = (function() {
var i, len, results;
results = [];
for (i = 0, len = students.length; i < len; i++) {
student = students[i];
results.push(student.name);
}
return results;
})();
console.log(names);
}).call(this);
現在,再次開啟命令提示符,然後如下執行 CoffeeScript 檔案。
c:\> list_comprehensions.coffee
執行後,CoffeeScript 檔案生成以下輸出。
[ 'Mohammed', 'Ram', 'Ram' ]
coffeescript_comprehensions.htm
廣告