CoffeeScript - comprensioni di elenchi
In CoffeeScript, possiamo anche memorizzare un gruppo di oggetti in un array. Illist le comprensione vengono utilizzate per mappare un array di oggetti su un altro array.
Sintassi
Supponiamo di avere un array di oggetti in CoffeeScript come [{key1: "value", key2: value}, {key1: "value", key2: value}], quindi puoi iterare questi elementi usando illist comprensione come mostrato di seguito.
for key,value of [ {key1: "value", key2: value}, {key1: "value", key2: value} ]
console.log key+"::"+value
Esempio
L'esempio seguente mostra l'utilizzo di listcomprensione fornita da CoffeeScript. Salva questo codice in un file con nomelist_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
Apri il command prompt e compila il file .coffee come mostrato di seguito.
c:\> coffee -c list_comprehensions.coffee
Durante la compilazione, ti dà il seguente 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);
Ora apri il file command prompt di nuovo ed eseguire il file CoffeeScript come mostrato di seguito.
c:\> list_comprehensions.coffee
All'esecuzione, il file CoffeeScript produce il seguente output.
[ 'Mohammed', 'Ram', 'Ram' ]