ThishVerse Logo
THISHVERSE
HomeBlogAboutContact
Back to all posts
Programming

JavaScript සහ TypeScript අතර වෙනස මොකක්ද?

JavaScript සහ TypeScript අතර වෙනස සහ ඒ භාවිතා කළ යුතු අවස්ථා

HHirun Thishakya
September 9, 2026
6 min read
JavaScript සහ TypeScript අතර වෙනස මොකක්ද?

JavaScript project එකක් පටන් ගන්නකොට හැම දෙයක්ම ගොඩක්ම simple.

Variable එකක් හදනවා, function ලියනවා, API එකක් connect කරනවා, features add කරනවා.

හැබැයි project එක ටික ටික ලොකු වෙද්දී situation එක වෙනස් වෙනවා.

Files වැඩි වෙනවා. Developers ලා වැඩි වෙනවා. API වලින් එන data complex වෙනවා. එක developer කෙනෙක් ලියපු function එක තව developer කෙනෙක් වෙනස් විදිහකට use කරනවා.

ඒ වගේ වෙලාවක පොඩි mistake එකක් නිසා application එකේ වෙන තැනක error එකක් එන්න පුළුවන්.

TypeScript මේ වගේ problems manage කරන්න help වෙන tool එකක්.

හැබැයි JavaScript සහ TypeScript අතර ඇත්තටම වෙනස මොකක්ද?


JavaScript කියන්නේ මොකක්ද?

JavaScript කියන්නේ web applications වල logic සහ interactivity හදන්න භාවිතා කරන programming language එකක්.

සාමාන්‍යයෙන් web development වල:

  • HTML → Structure

  • CSS → Styling

  • JavaScript → Logic & Behavior

උදාහරණයක්:

let username = "Thish";

console.log("Hello " + username);

JavaScript browser එකේ විතරක් නෙවෙයි භාවිතා වෙන්නේ.

Node.js වගේ technologies එක්ක JavaScript භාවිතා කරලා backend applications සහ APIs පවා හදන්න පුළුවන්.


JavaScript වල Types කොහොමද වැඩ කරන්නේ?

JavaScript වල variable එක declare කරනකොට type එක explicitly කියන්න ඕන නැහැ.

let age = 21;
let name = "Thish";
let isStudent = true;

JavaScript value එක බලලා type එක handle කරනවා.

තවත් interesting දෙයක් තමයි:

let value = 100;

value = "Hello";

මෙතන value මුලින් number එකක්.

පස්සේ ඒකට string එකක් assign කළත් JavaScript ඒක allow කරනවා.

මේකට dynamic typing කියනවා.

පොඩි projects වලදී මේ flexibility එක useful.

හැබැයි ලොකු projects වලදී මේ flexibility නිසා සමහර mistakes හොයාගන්න අමාරු වෙන්න පුළුවන්.


TypeScript කියන්නේ මොකක්ද?

TypeScript කියන්නේ Microsoft විසින් develop කරපු programming language එකක්. ඒක JavaScript වලට static type checking වගේ features එකතු කරනවා.

උදාහරණයක්:

let age: number = 21;

මෙතන number කියලා type එකක් දීලා තියෙනවා.

ඒ නිසා:

age = "Hello";

කළොත් TypeScript මේක type error එකක් කියලා පෙන්වනවා.

ඒකේ main idea එක සරලයි:

Code එක run කරන්න කලින් type-related mistakes හඳුනාගන්න help කරන එක.


JavaScript vs TypeScript: Type Checking

මේ දෙකේ ලොකුම වෙනස්කම මෙතනින් තේරුම් ගන්න පුළුවන්.

JavaScript

let price = 500;

price = "Five Hundred";

JavaScript මේකට type error එකක් දාන්නේ නැහැ.

TypeScript

let price: number = 500;

price = "Five Hundred";

TypeScript මේක problem එකක් විදිහට හඳුනාගන්නවා.

ඒ කියන්නේ TypeScript code එකේ values සහ data structures ගැන කලින්ම rules define කරන්න පුළුවන්.


TypeScript කියන්නේ JavaScript වලට ආදේශකයක්ද?

නැහැ.

TypeScript JavaScript වලට ගොඩක් closely connected.

උදාහරණයක්:

const name = "Thish";

console.log(name);

මේක JavaScript code එකක් වගේම TypeScript file එකකත් ලියන්න පුළුවන්.

TypeScript-specific feature එකක් add කළොත්:

const name: string = "Thish";

මෙතන : string තමයි extra type information එක.

ඒ නිසා JavaScript දන්න කෙනෙක්ට TypeScript ඉගෙන ගන්න එක සාපේක්ෂව ලේසියි.


TypeScript Browser එකේ Run වෙනවද?

සාමාන්‍ය browser එකකට TypeScript syntax directly තේරෙන්නේ නැහැ.

ඒ නිසා development process එකේ TypeScript code එක JavaScript බවට transform කරනවා.

සරලව:

TypeScript → JavaScript → Browser

උදාහරණයක්:

const age: number = 21;

Browser එකට යන JavaScript code එක මේ වගේ:

const age = 21;

number කියන type information එක runtime එකේ browser එකට අවශ්‍ය නැහැ.


Student Application එකක්

හිතන්න අපි university studentsලා manage කරන application එකක් හදනවා කියලා.

JavaScript වල:

const student = {
name: "Thish",
age: 21,
course: "Computing"
};

Project එක ලොකු වෙද්දී developers ලාට student object එකේ expected structure එක මතක තියාගන්න අමාරු වෙන්න පුළුවන්.

TypeScript වලින් අපි ඒ structure එක define කරන්න පුළුවන්:

interface Student {
name: string;
age: number;
course: string;
}

ඊට පස්සේ:

const student: Student = {
name: "Thish",
age: 21,
course: "Computing"
};

දැන් TypeScript දන්නවා Student object එකක:

  • name → string

  • age → number

  • course → string

විය යුතු බව.

කෙනෙක් මෙහෙම ලිව්වොත්:

const student: Student = {
name: "Thish",
age: "Twenty One",
course: "Computing"
};

TypeScript එකෙන් ඒ mistake එක identify කරන්න පුළුවන්.


TypeScript වල තවත් වැදගත් දෙයක්

ලොකු project එකකදි developer කෙනෙක්ට function එකක් හම්බවුණා කියලා හිතන්න.

function createUser(
name: string,
age: number,
email: string
) {
// ...
}

Function එක use කරන developerට code එක බලපු ගමන් තේරෙනවා:

  • name → string

  • age → number

  • email → string

ඒ නිසා වෙන developer කෙනෙක්ට documentation හොය හොයා ඉන්න අවශ්‍යතාව අඩු වෙනවා.

ඒ වගේම modern code editors වල:

  • Autocomplete

  • Error highlighting

  • Parameter suggestions

  • Code navigation

  • Safer refactoring

වගේ features වලට හොඳින් වැඩ කරන්න TypeScript වල type information එක use කරන්න පුළුවන්.


API සමඟ වැඩ කරනකොට තියෙන වාසිය

Modern web applications වල APIs ගොඩක් use කරනවා.

හිතන්න API එකකින් මේ data එක එනවා:

{
"id": 101,
"name": "Thish",
"email": "student@example.com"
}

TypeScript වලින්:

interface User {
id: number;
name: string;
email: string;
}

වගේ structure එකක් define කරන්න පුළුවන්.

මේකෙන් application එක ඇතුළේ User data එක කොහොමද තියෙන්න ඕන කියන එක clear වෙනවා.

හැබැයි TypeScript type එකක් define කළා කියලා API එකෙන් ඇත්තටම ඒ data එකම එනවා කියලා guarantee වෙන්නේ නැහැ.

External data සඳහා අවශ්‍ය නම් runtime validation කරන්න වෙනවා.


JavaScript vs TypeScript

Feature

JavaScript

TypeScript

Typing

Dynamic

Static type checking

Type annotations

❌

✅

Browser එකේ direct support

✅

❌ සාමාන්‍යයෙන් JavaScript බවට transform කල යුතුයි

Learning curve

අඩුයි

ටිකක් වැඩියි

Flexibility

වැඩියි

Structured වැඩියි

Type errors

බොහෝවිට runtime එකේ හමුවෙන්න පුළුවන්

Development එකේදී බොහෝ ඒවා හඳුනාගන්න පුළුවන්

Large projects

Maintain කරන්න අමාරු වෙන්න පුළුවන්

Maintainability සඳහා useful

IDE support

හොඳයි

ඉතා හොඳයි

Interfaces

❌

✅


TypeScript Application එක Fast කරනවද?

නැහැ.

TypeScript use කළා කියලා application එක නිකන්ම වේගවත් වෙන්නේ නැහැ.

TypeScript වල main benefit එක performance නෙවෙයි.

එය වැඩිපුර help කරන්නේ developerට:

  • Mistakes කලින් හඳුනාගන්න

  • Code එක understand කරන්න

  • ලොකු codebase එක manage කරන්න

  • Refactoring safely කරන්න

  • Team එකක් එක්ක වැඩ කරන්න

ඒ නිසා TypeScript එක runtime performance tool එකකට වඩා development tool එකක් කියලා හිතන එක හොඳයි.


TypeScript වල අවාසි මොනවද?

TypeScript වල benefits තියෙනවා වගේම trade-offs ටිකකුත් තියෙනවා.

වැඩිපුර concepts තියෙනවා

JavaScript වලට අමතරව:

  • Interfaces

  • Type aliases

  • Union types

  • Generics

  • Type narrowing

  • Utility types

වගේ concepts ඉගෙන ගන්න වෙනවා.

Setup එක ටිකක් වැඩියි

Simple JavaScript file එකක් run කරන එක ලේසියි.

TypeScript project එකකට compiler එකක් හෝ TypeScript support කරන build tool එකක් අවශ්‍ය වෙනවා.

සමහර වෙලාවට වැඩිපුර code ලියන්න වෙනවා

JavaScript:

function add(a, b) {
return a + b;
}

TypeScript:

function add(a: number, b: number): number {
return a + b;
}

TypeScript version එකේ information වැඩියි.


JavaScript භාවිතා කරන්න හොඳ මොන වගේ තැන් වලද?

JavaScript හොඳ choice එකක් වෙන්න පුළුවන්:

  • Small projects

  • Simple websites

  • Quick scripts

  • Prototypes

  • Learning projects

උදාහරණයක් විදිහට simple webpage එකකට buttons කිහිපයක් සහ small interactions ටිකක් විතරක් තියෙනවා නම් JavaScript හොඳටම ප්‍රමාණවත්.


TypeScript භාවිතා කරන්න හොඳ මොන වගේ තැන් වලද?

TypeScript වැඩිපුර useful වෙන්නේ project එක:

  • ලොකු නම්

  • Developers ලා ගොඩක් ඉන්නවා නම්

  • Complex data structures තියෙනවා නම්

  • APIs ගොඩක් use කරනවා නම්

  • Long-term maintain කරන්න වෙනවා නම්

  • Code එක නිතර refactor කරනවා නම්

වගේ situations වලදී.

Project එක ලොකු වෙනකොට code එකේ expected structure එක clearව තිබීම developer කෙනාට ලොකු help එකක්.


Beginner කෙනෙක් මුලින් මොකක් ඉගෙන ගන්න ඕනෙද?

Web development අලුතින් පටන් ගන්නවා නම් JavaScript මුලින් ඉගෙන ගන්න එක හොඳයි.

Simple learning path එක:

HTML → CSS → JavaScript → TypeScript

මුලින් JavaScript වල:

  • Variables

  • Functions

  • Arrays

  • Objects

  • DOM

  • Events

  • Modules

  • Promises

  • Async/Await

  • APIs

වගේ fundamentals හොඳින් තේරුම් ගන්න.

ඊට පස්සේ TypeScript වල types, interfaces සහ අනෙකුත් features ඉගෙන ගන්න.

එතකොට TypeScript කියන්නේ completely අලුත් programming language එකක් වගේ දැනෙන්නේ නැහැ.

Tags:JavaScriptTypeScriptProgrammingWeb DevelopmentStatic TypingDynamic Typing

Did you find this article helpful?

Related Articles

View Post
Azure වලින් මොනවද කරන්න පුළුවන්?
Cloud Computing
October 7, 2026

Azure වලින් මොනවද කරන්න පුළුවන්?

Microsoft Azure කියන්නේ විවිධ විදිහෙ දේවල් ගොඩක් කරන්න පුලුවන් cloud platform එකක්.

View Post
මොනවද මේ Linux Shell වර්ග?
DevOpsFeatured
October 2, 2026

මොනවද මේ Linux Shell වර්ග?

Linux වල තියෙන Bash, Zsh, Fish, Dash වගේ Shells අතර වෙනස්කම්

View Post
Flutter සහ React Native
Programming
September 24, 2026

Flutter සහ React Native

Mobile App Development එකට හොද මොකක්ද?

ThishVerse Logo
THISHVERSE
|

© 2026 ThishVerse. All rights reserved.

PrivacyTerms
|By Thish
Comments (0)

Sign in to join the conversation

No comments yet. Be the first to comment!