Collect.js 是 Laravel Colletctions 在 JavaScript 中的實現。它不但沒有任何依賴,還能使處理陣列和物件的工作變得簡單。
這裡是一個用 where
方法的例子:
const collection = collect([
{'product': 'Desk', 'price': 200},
{'product': 'Chair', 'price': 100},
{'product': 'Bookcase', 'price': 150},
{'product': 'Door', 'price': '100'},
]);
const filtered = collection.where('price', 100);
filtered.all();
//=> [
//=> {'product': 'Chair', 'price': 100},
//=> {'product': 'Door', 'price': '100'}
//=> ]
如你所見它幾乎一一對應地實現了 Laravel Collection 中所有的方法甚至還包括最新的 Collection Tap ,不過,它在處理比較的這部分卻存在著一些差異:
在 collect.js 中所有的比較都是用「===」來完成的。在 JavaScript 中使用「==」通常是不被贊成的。預設情況下,Laravel 只執行「==」比較,並提供幾種「===」比較的方法。這些方法沒有在 collect.js 中被實現,因為預設情況下,所有的方法都是「===」的。
你可以透過 npm 來安裝 Collect.js
npm install collect.js
完整的示例文件和安裝可以到 GitHub repo 或者 npm 頁面上檢視。
本作品採用《CC 協議》,轉載必須註明作者和本文連結