DEV Community

davinceleecode
davinceleecode Subscriber

Posted on

JavaScript vs C# LINQ: A Developer-Friendly Cheat Sheet 📃

If you're a C# developer learning JavaScript—or a JavaScript developer curious about LINQ in C#—this guide is for you. Let's compare some of the most common data transformation methods between JavaScript Arrays and C# LINQ.


🔁 Overview Table

Purpose JavaScript C# LINQ
Filtering array.filter() .Where()
Projection (Select) array.map() .Select()
Condition Check array.some() / every() .Any() / .All()
Aggregation array.reduce() .Aggregate()
Sorting array.sort() .OrderBy() / .ThenBy()
Finding First array.find() .First() / .FirstOrDefault()

Examples:

🍧 1. Filtering Items

C# LINQ

var adults = people.Where(p => p.Age >= 18);
Enter fullscreen mode Exit fullscreen mode

JavaScript

const adults = people.filter(p => p.age >= 18);
Enter fullscreen mode Exit fullscreen mode

🍧 2. Selecting/Projecting Fields

C# LINQ

var names = people.Select(p => p.Name);
Enter fullscreen mode Exit fullscreen mode

JavaScript

const names = people.map(p => p.name);
Enter fullscreen mode Exit fullscreen mode

🍧 3. Checking Conditions

C# LINQ

bool anyMinor = people.Any(p => p.Age < 18);
bool allAdults = people.All(p => p.Age >= 18);
Enter fullscreen mode Exit fullscreen mode

JavaScript

const anyMinor = people.some(p => p.age < 18);
const allAdults = people.every(p => p.age >= 18);
Enter fullscreen mode Exit fullscreen mode

🍧 4. Reducing/Aggregating Values

C# LINQ

int totalAge = people.Aggregate(0, (sum, p) => sum + p.Age);
Enter fullscreen mode Exit fullscreen mode

JavaScript

const totalAge = people.reduce((sum, p) => sum + p.age, 0);
Enter fullscreen mode Exit fullscreen mode

🍧 5. Sorting Items

C# LINQ

var sorted = people.OrderBy(p => p.Name).ThenBy(p => p.Age);
Enter fullscreen mode Exit fullscreen mode

JavaScript

const sorted = people
  .sort((a, b) => a.name.localeCompare(b.name) || a.age - b.age);
Enter fullscreen mode Exit fullscreen mode

🍧 6. Finding the First Match

C# LINQ

var firstAdult = people.FirstOrDefault(p => p.Age >= 18);
Enter fullscreen mode Exit fullscreen mode

JavaScript

const firstAdult = people.find(p => p.age >= 18);
Enter fullscreen mode Exit fullscreen mode

🌟 Final Thoughts

JavaScript and C# may look different on the surface, but their array and LINQ methods are quite similar under the hood. If you're transitioning between the two, keep this guide handy to translate concepts quickly!

If you found this helpful, consider supporting my work at ☕ Buy Me a Coffee.

Top comments (0)