Category Archives: JavaScript

জাভাস্ক্রিপ্ট স্ট্রিং (JavaScript Strings)

জাভাস্ক্রিপ্ট স্ট্রিং (JavaScript Strings)

  • জাভাস্ক্রিপ্ট স্ট্রিং টেক্সট (লেখা) সংরক্ষণ ও কাজে লাগানোর জন্য ব্যবহার করা হয়।
  • জাভাস্ক্রিপ্ট স্ট্রিং সাধারণভাবে একগুচ্ছ বর্ণকে পরবর্তীতে ব্যবহারের জন্য সংরক্ষণ করে। যেমন: "John Doe"
  • স্ট্রিং কোটেশনর এর ভিতরে যেকোন লেখা হতে পারে। আপনি একক বা ডবল কোটেশন ব্যবহার করতে পারেন।

যেমন:


var carname = "Volvo XC60";
var carname = 'Volvo XC60';


 

 

আপনি স্ট্রিং এর ভিতরে যতবার খুশি কোটেশন ব্যবহার করতে পারেন, যতক্ষন পর্যন্ত না প্রথম ও শেষ কোটেশন মিলে যায়।

উদাহরণ:


var answer = "It's alright";
var answer = "He is called 'Johnny'";
var answer = 'He is called "Johnny"';


 

 

স্ট্রিং এর দৈঘ্য

একটি স্ট্রিং এর দৈর্ঘ্য হবে প্রোপার্টি এ নির্দিষ্টকৃত দৈর্ঘ্য (length):

উদাহরণ:


var txt = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
var sln = txt.length;


 

 

বিশেষ বর্ণ

যেহেতু স্ট্রিং কোটেশন এর ভিতরে লিখতে হয়, সেহেতু নিচের উদাহরণটিকে ভুল বুঝে:


var y = "We are the so-called "Vikings" from the north."


উপরের স্ট্রেংটিকে মনে করে, "We are the so-called" .

এই সমস্যা সমাধানের উপায় হল, \ অক্ষরের অব্যাহতি (escape character) ব্যবহার করা।

এই অক্ষরের অব্যাহতি ব্যাকস্লাসটি বিশেষ বর্ণকে স্ট্রিং হিসেবে ফেরত দেয়।:

উদাহরণ:


var x = 'It\'s alright';
var y = "We are the so-called \"Vikings\" from the north."


অব্যাহতি অক্ষর (\) অন্যান্য বিশেষ বর্ণকেও স্ট্রিং হিসেবে ব্যবহার করতে ব্যবহৃত হয়।

এখানে বিশেষ বর্ণের একটি তালিকা দেওয়া হল যা ব্যাকস্লাস (\) এর মাধ্যমে টেক্স স্ট্রিং হিসেবে ব্যবহার করা যায়:

কোড আউটপুট
\' একক কোটেশন
\" ডবল কোটেশন
\\ ব্যাকস্লাস
\n নতুন লাইন
\r বহন ফেরত
\t ট্যাব
\b ব্যাকস্পেস
\f ফর্ম ফিড

 

লম্বা কোড এর লাইনকে ভেঙ্গে দেওয়া

সহজে পড়ার উপযোগী করার জন্য অনেক সময় প্রোগ্রামাররা 80 বর্ণের অধিক ক্যারেকটার এর লম্বা লাইনকে ভেঙ্গে লেখেন।

যদি জাভাস্ক্রিপ্ট এর স্টেটমেন্ট এক লাইনে সংকুলান না হয়, তাহলে সবচেয়ে ভাল উপায় হলো কোন অপারেটর এর শেষে এটিকে ভেঙ্গে দেওয়া।

উদাহরণ:


document.getElementById("demo").innerHTML =
"Hello Dolly.";


 

আপনি টেক্স স্ট্রিং এর ভিতরে একটি একক ব্যাকস্লাস (\) ব্যবহার করেও লাইটকে ভাঙ্গতে পারেন।

উদাহরণ:


document.getElementById("demo").innerHTML = "Hello \
Dolly!";


 

নোট : \ মেথড ECMAScript (জাভাস্ক্রিপ্ট) স্ট্যান্ডার্ড নয়। কিছু ব্রাউজার \ (স্লাস) এর পেছনে স্পেস সাপোর্ট করে না।

একটি দীর্ঘ স্ট্রিং কে ভাঙ্গার নিরাপদ (কিন্তু একটু সময়সাপেক্ষ) পথ হচ্ছে স্ট্রিং সংযোযন ব্যবহার করা:

উদাহরণ:


document.getElementById("demo").innerHTML = "Hello" +
"Dolly!";


 

আপনি কোড লাইনকে ব্যাকস্লাস দিয়ে ভাঙ্গতে পারবেন না:

উদাহরণ:


document.getElementById("demo").innerHTML = \
"Hello Dolly!";


 

 

স্ট্রিং অবজেক্টও হতে পারে

সাধারণভাবে জাভাস্ক্রিপ্ট স্ট্রিং হচ্ছে আদিম মান (primitive values), অক্ষর দিয়ে তৈরি: var firstName = "John"

কিন্তু স্ট্রিং কে new কীওয়ার্ড এর সাহায্যে অবজেক্ট হিসেবেও ব্যবহার করা যেতে পারে : var firstName = new String("John")

উদাহরণ :


var x = "John";
var y = new String("John");

// typeof x will return string
// typeof y will return object


 

নোট: স্ট্রিং কে অবজেক্ট হিসেবে ব্যবহার করবেন না। এটি প্রক্রিয়াকরণ গতিকে ধরি করে ফেলে এবং বাজে পার্শ্বপ্রতিক্রিয়া উৎপন্ন হয়।

 

যখন == সমান অপারেটর ব্যবহার করবেন, সমান স্ট্রিংগুলো সমান দেখাবে:

যেমন:


var x = "John";
var y = new String("John");

// (x == y) is true because x and y have equal values


 

যখন আপনি === সমান অপারেটর ব্যবহার করবেন, সমস্ট্রিংগুলো সবসময় সমান থাকবে না, কারণ === অপারেটর মান এবং টাইপ একই হবে বলে আশা করে।


var x = "John";
var y = new String("John");

// (x === y) is false because x and y have different types


 

বা, অবজেক্ট এর সাথে অবজেক্ট তুলনা করা যায় না:

যেমন:


var x = new String("John");
var y = new String("John");

// (x == y) is false because objects cannot be compared


 

 

স্ট্রিং প্রোপার্টি এবং মেথড

আদিম মান, যেমন "John Doe" এর কোন প্রোপার্টিজ এবং মেথড থাকতে পারে না (কেননা এরা অবজেক্ট নয়)।

কিন্তু জাভাস্ক্রিপ্টে আদিম মান এর জন্যও মেথড এবং প্রোপার্টিজ রয়েছে, কারণ যখন মেথড এবং প্রোপার্টিজ কার্যে পরিণত করা হয় তখন ভাজাস্ক্রিপ্ট আদিম মানকে একইরূপে অবজেক্ট হিসেবে গণ্য করে।

 

স্ট্রিং মেথড সম্পর্কে পরবর্তী অধ্যায় এ আলোচনা করা হয়েছে।

 

স্ট্রিং প্রোপার্টিজ

প্রোপার্টি (Property) বর্ণনা
constructor যে ফাংশনটি স্ট্রিং অবজেক্ট এর প্রোটোটাইপ তৈরী করেছিলেন তা ফেরত দেয়
length স্ট্রিং এর length ফেরত দেয়
prototype আপনাকে একটি অবজেক্ট এর ভিতরে প্রোপার্টি এবং মেথড যোগ করার অনুমতি প্রদান করে।

 

স্ট্রিং মেথড

মেথড (Method) বর্ণনা
charAt() সুনির্দিষ্ট ইনডেক্স এর (অবস্থান) নির্দিষ্ট বর্ণ ফেরত দেয়।
charCodeAt() সুনির্দিষ্ট ইনডেক্স এর নির্দিষ্ট ইউনিকোড বর্ণ ফেরত দেয়।
concat() দুই বা ততোধিক স্ট্রিং কে যুক্ত করে এবং তার একটি অনুলিপি ফেরত দেয়।
fromCharCode() ইউনিকোড মানকে বর্ণে পরিবর্তন করে।
indexOf() স্ট্রিং এর নির্দিষ্ট মান এর ভিতরে প্রথম পাওয়া কাঙ্খিত ঘটনা এর অবস্থান ফেরত দেয়।
lastIndexOf() স্ট্রিং এর নির্দিষ্ট মান এর ভিতরে শেষ পাওয়া কাঙ্খিত ঘটনা এর অবস্থান ফেরত দেয়।
localeCompare() বর্তমান অবস্থানের দুটি স্ট্রিং এর মধ্যে তুলনা করে।
match() রেগুলার এক্সপ্রেশন এর মধ্যে একটি স্ট্রিং কে খুঁজে এবং খুঁজে পাওয়া ফলাফল ফেরত দেয়।
replace() স্ট্রিং এর নির্দিষ্ট মান খোঁজে এবং নতুন একটি স্ট্রিং দ্বারা প্রতিস্থাপণ করে তা ফেরত দেয়।
search() স্ট্রিং এর নির্দিষ্ট মান খোঁজে এবং এর অবস্থান ফেরত দেয়।
slice() স্ট্রিং এর সার অংশ বের করে এবং নতুন একটি স্ট্রিং ফেরত দেয়।
split() স্ট্রিং কে বিভাজন করে সাবস্ট্রিং এর অ্যারে তৈরি করে।
substr() স্ট্রিং এর নির্দিষ্ট অংশ এর সার অংশ বের করে কিছুসংখ্যক বর্ণের মাধ্যমে।
substring() দুইটি নির্দিষ্ট অবস্থান এর মধ্যে একটি স্ট্রিং এর নির্দিষ্ট অংশ এক্সট্রাক্ট করে।
toLocaleLowerCase() স্ট্রিং কে ছোট হাতের অক্ষরে পরিণত কর।
toLocaleUpperCase() স্ট্রিং কে বড় হাতের অক্ষরে পরিণত করে।
toLowerCase() স্ট্রিং কে ছোট হাতের অক্ষরে পরিণত কর।
toString() স্ট্রিং অবজেক্ট এর মান ফেরত দেয়।
toUpperCase() স্ট্রিং কে বড় হাতের অক্ষরে পরিণত করে।
trim() স্ট্রিং এর উভয় প্রান্ত থেকে ফাঁকা স্পেস মুছে ফেলে।
valueOf() স্ট্রিং অবজেক্ট এর আদি মান ফেরত দেয়।

 

নিজে নিজে অনুশীলন কর!

অনুশীলন 01:

ইঙ্গিত: ভেরিয়েবল টেক্সট এ স্ট্রিং "Hello World!" নির্ধারণ কর।


<!DOCTYPE html>
<html>
<body>

<p id="demo"></p>

<script>
var txt;
document.getElementById("demo").innerHTML = txt;
</script>

</body>
</html>


 

 

অনুশীলন 02:

ইঙ্গিত: টেক্সট ভেরিয়েবল এর মান  এর দৈর্ঘ্য প্রদর্শনের জন্য length প্রোপার্টি ব্যবহার কর।


<!DOCTYPE html>
<html>
<body>

<p id="demo"></p>

<script>
var txt = "Hello World!";
document.getElementById("demo").innerHTML = txt;
</script>

</body>
</html>


 

অনুশীলন 03:

ইঙ্গিত: স্ট্রিং টি ভেঙ্গে গেছে - ঠিকভাবে প্রদর্শনের জন্য অক্ষরের অব্যাহতি (escape character) ব্যবহার কর।


<!DOCTYPE html>
<html>
<body>

<p id="demo"></p>

<script>
document.getElementById("demo").innerHTML = "We are "Vikings".";
</script>

</body>
</html>


 

অনুশীলন 04:

ইঙ্গিত: শ্রেণীবদ্ধভাবে সংযুক্ত দুটি স্ট্রিং প্রদর্শন করে "হ্যালো ওয়ার্ল্ড!"


<!DOCTYPE html>
<html>
<body>

<p id="demo">Display the result here.</p>

<script>
var str1 = "Hello ";
var str2 = "World!";
</script>

</body>
</html>


 

 

 

জাভাস্ক্রিপ্ট অ্যাসাইনমেন্ট JavaScript Assignment

জাভাস্ক্রিপ্ট অ্যাসাইনমেন্ট অপারেটর

অ্যাসাইনমেন্ট অপারেটর ভেরিয়েবল এর মান নির্ধারণ করে।

অপারেটর উদাহরণ একই হিসাবে
= x = y x = y
+= x += y x = x + y
-= x -= y x = x - y
*= x *= y x = x * y
/= x /= y x = x / y
%= x %= y x = x % y

 

= অ্যাসাইনমেন্ট অপারেটরটি ভেরিয়েবল এর মান নির্ধারণ করে।


var x = 10;


 

 

+= অ্যাসাইনমেন্ট অপারেটরটি ভেরিয়েবল এর সাথে একটি মান যোগ করে।


var x = 10;
x += 5;


 

 

-= অ্যাসাইনমেন্ট অপারেটরটি ভেরিয়েবল থেকে একটি মান বিয়োগ করে।


var x = 10;
x -= 5;


 

 

*= অ্যাসাইনমেন্ট অপারেটরটি ভেরিয়েবল এর সাথে একটি মান গুণন করে।


var x = 10;
x *= 5;


 

 

/= অ্যাসাইনমেন্ট অপারেটরটি ভেরিয়েবলকে একটি মান দ্বারা ভাগ করে।


var x = 10;
x /= 5;


 

 

%= অ্যাসাইনমেন্ট অপারেটরটি ভেরিয়েবলকে একটি মান দ্বারা ভাগ করে ভাগশেষ প্রদান করে।


var x = 10;
x %= 5;


 

 

গাণিতিক জাভাস্ক্রিপ্ট (JavaScript Arithmetic)

গাণিতিক জাভাস্ক্রিপ্ট (JavaScript Arithmetic)

সাধারণভাবে সংখ্যা নিয়ে কাজ করাই হচ্ছে গাণিতিক

জাভাস্ক্রিপ্ট গাণিতিক অপারেটরস

গাণিতিক অপারেটর সংখ্যা (আক্ষরিক বা ভেরিয়েবল) নিয়ে গাণিতিক কার্য সম্পাদন করে।

 

অপারেটর বর্ণনা
+ যোগ
- বিয়োগ
* গুণ
/ ভাগ
% ভাগশেষ
++ বৃদ্ধি
-- হ্রাস

 

গাণিতিক অপারেশন

একটি সাধারণ গাণিতিক অপারেশন দুটি সংখ্যার উপর কাজ করে।

সংখ্যা দুইটি লিটারেল (স্বাভাবিক সংখ্যা) হতে পারে

উদাহরণ


var x = 100 + 50;


 

বা ভেরিয়েবল

উদাহরণ


var x = a + b;


অথবা এক্সপ্রেশন (রাশিমালা)


var x = (100 + 50) * a;


 

 

অপারেটর ও অপারেন্ডস (অপারেশন বা কার্যসম্পাদনের সংখ্যা)

সংখ্যাকে (গাণিতিক অপারেশন এ) বলা হয় অপারেন্ডস।

অপারেশন (ক্রিয়াপ্রণালী) (দুইটি অপারেন্ডস এর মধ্যে সম্পন্ন হয়) কে বলা অপারেটর দ্বারা সংঙ্গায়িত করা হয়।

অপারেন্ড অপারেটর অপারেন্ড
100 + 50

এডিশন (যোগ) অপারেটর সংখ্যাগুলোকে যোগ করে


var x = 5;
var y = 2;
var z = x + y;


সাবস্ট্রাকশন (বিয়োগ) অপারেটর সংখ্যাগুলোকে বিয়োগ করে


var x = 5;
var y = 2;
var z = x - y;


 
মাল্ডিপ্লিকেশন (গুণ) অপারেটর সংখ্যাগুলোকে গুণ করে


var x = 5;
var y = 2;
var z = x * y;


ডিভিশন (ভাগ) অপারেটর সংখ্যাগুলোকে ভাগ করে


var x = 5;
var y = 2;
var z = x / y;


মডুলার (ভাগশেষ) অপারেটর ভাগশেষ প্রদান করে


var x = 5;
var y = 2;
var z = x % y;


ইনক্রেমেন্ট অপারেটর সংখ্যার মান বৃদ্ধি করে


var x = 5;
x++;
var z = x;


ডিক্রিমেন্ট অপারেটর সংখ্যার মান হ্রাস করে


var x = 5;
x--;
var z = x;


 

 

অপারেটর প্রাধান্য (Operator Precedence)

কোন অপারেটর এর কাজ আগে সম্পন্ন হবে তা গাণিতিক নিয়ম অনুযায়ীই সম্পন্ন হয়।


var x = 100 + 50 * 3;


 

এর ফলালাল কি 130*3 এর সমান নাকি 100 + 150 এর সমান?

যোন নাকি গুণ এর কাজ আগে সম্পন্ন হবে?

প্রথাগত স্কুল এর গণিত এর নিয়ম অনুসারে গুণ এর কাজ আগে সম্পন্ন হবে।

গুণ (*) এবং ভাগ (/) কে যোগ (+) এবং বিয়োগ (-) এর থেকে অধিক প্রাধান্য দেয়া হয়।

এবং (স্কুল গণিতের নিয়ম অনুসারে) বন্ধনি চিহ্ন প্রদানের মাধ্যমে প্রাধান্য পরিবর্তণ করা যায়।

উদাহরণ


var x = (100 + 50) * 3;


 

বন্ধনি চিহ্ন ব্যবহার কররে বন্ধনির ভিতরের কার্য আগে সম্পন্ন হয়।
যখন অনেকগুলো অপারেশন সমগুরুত্বের হয় (যেমন গুণ এবং ভাগ), তারা বাম এরটি আগে এবং ক্রমান্নয়ে ডানেরগুলো নির্ণয় করে।
উদাহরণ


var x = 100 + 50 - 3;


 

 

গাণিতিক অপারেটর প্রাধান্য

নিম্নের টেবিলে উচ্চ হতে নিম্ন প্রাধান্য অনুসারে জাভাস্ক্রিপ্ট এর গাণিতিক অপারেটর এর তালিকা প্রদান করা হয়েছে।

অপারেটর প্রাধান্য
( ) বন্ধনি
++ -- বৃদ্ধি এবং হ্রাস
* / % গুণন, বিভাজন, এবং ভাগশেষ
+ - যোগ এবং বিয়োগ

নোট : প্রথম বন্ধনির মধ্যকার অংশ অন্য যেকোন অংশের পূর্বে নির্ণয় করা হয়।

জাভাস্ক্রিপ্ট টিউটোরিয়াল JavaScript Tutorial

জাভাস্ক্রিপ্ট টিউটোরিয়াল JavaScript Tutorial

  • জাভাস্ক্রিপ্ট হচ্ছে এইচটিএমএল ও ওয়েব এর একটি প্রোগ্রামিং ভাষা।
  • প্রোগ্রামিং ভাষা আপনি কম্পিউটারকে যেভাবে কাজ করাতে চান সেভাবে কাজ করায়।
  • জাভাস্ক্রিপ্ট শেখা সহজ।
  • এই টউটোরিয়ালটি আপনাকে প্রাথমিক থেকে উচ্চতর জাভাস্ক্রিপ্ট শেখাবে।

 

প্রতি অধ্যায় এ উদাহরণ

প্রতি অধ্যায় এ উদাহরণ সন্নিবেশিত করা হয়েছে।

যেমন:


<!DOCTYPE html>
<html>
<body>
<h1>My First JavaScript</h1>
<button type="button"
onclick="document.getElementById('demo').innerHTML = Date()">
Click me to display Date and Time.</button>
<p id="demo"></p>
</body>
</html>

ফলাফল


My First JavaScript


 

উদাহরণ এর সাহায্যে শেখা

উদাহরণ 1000 শব্দ দ্বারা বর্ণনা করা থেকেও ভাল। শেখার জন্য অনেক ক্ষেত্রে উদাহরণ ব্যাখ্যা দেখে শেখার চেয়েও সহজতর।

নোট: আপনি যদি সকল উদাহরণ ব্যবহার করে দেখেন, তাহলে আপনি খুব অল্প সময়ে জাভাস্ক্রিপ্ট সম্পর্কে প্রচুর জানতে পারবেন।

 

জাভাস্ক্রিপ্ট কেন শিখবেন?

জাভাস্ক্রিপ্ট হচ্ছে তিনটি ল্যাংগুয়েজ এর মধ্যে একটি যা প্রত্যেক ওয়েব ডেভেলপারকে অবশ্যই শিখতে হয়:

  1. HTML ওয়েব পেজ উপাদানগুলো সন্নিবেশিত করতে
  2. CSS ওয়েব পেজ এর বিন্যাস/সাজসজ্জা নির্দিষ্ট করতে
  3. JavaScript ওয়েব পেজ এর আচরণ প্রোগ্রামিং এর সাহায্যে নিয়ন্ত্রণ করতে

এই টিউটোরিয়ালটি হচ্ছে জাভাস্ক্রিপ্ট সম্পর্কে, এবং জাভাস্ক্রিপ্ট কিভাবে এইচটিএমএল এবং সিএসএস এর সাথে কাজ করে সে সম্পর্কে।

 

শেখার গতি

  • এই টউটোরিয়ার এ শেখার গতি আপনার পছন্দের উপর নির্ভর করে।
  • সবকিছুই আপনার উপর।
  • আপনি যদি কোন কিছু পুরোপুরি বুঝতে না পারেন তাহলে আপনি বিরতি নিতে পারেন বা পু্ণরায় পড়তে পারেন।
  • সবসময়ই নিশ্চিত হয়ে নিন যে আপনি উদাহরণগুলো বুঝতে পেরেছেন।

জাবাস্ক্রিপ্ট আউটপুট (JavaScript Output)

JavaScript Output

অনুবাদ করেছেন AbuJubair Mahin

 

জাভাস্ক্রিপ্ট কোনো বিল্ট ইন প্রিন্ট অথবা ডিসপ্লে ফাংশন নেই।

JavaScript Display প্রোপার্টিস

জাভাস্ক্রিপ্ট বিভিন্ন উপায়ে তথ্য "প্রদর্শন" করতে পারে:

* window.alert() ব্যবহার করে সতর্কতা বক্সে লেখা ।
* document.write() ব্যবহার করে HTML আউটপুট মধ্যে লেখা ।
* innerHTMLব্যবহার করে একটি HTML উপাদান মধ্যে লেখা ।
* console.log() ব্যবহার করে ব্রাউজার কনসোল মধ্যে লেখা ।

window.alert() ব্যবহার

আপনি তথ্য প্রদর্শন করার জন্য একটি সতর্কতা বাক্স ব্যবহার করতে পারেন :.

উদাহরনঃ


<!DOCTYPE html>
<html>
<body>
<h1>My First Web Page</h1>
<p>My first paragraph.</p>
<script>
window.alert(5 + 6);
</script>
</body>
</html>


document.write() ব্যবহার

document.write() পরীক্ষার উদ্দেশ্যে এটি ব্যবহার করা সুবিধাজনকঃ

উদাহরনঃ


<!DOCTYPE html>
<html>
<body>
<h1>My First Web Page</h1>
<p>My first paragraph.</p>
<script>
document.write(5 + 6);
</script>
</body>
</html>

 

HTML ডকুমেন্ট সম্পূর্ণরূপে লোড করার পরে document.write () ব্যবহার করে, সব বিদ্যমান HTML মুছে ফেলা হবে:

উদাহরনঃ


<!DOCTYPE html>
<html>
<body>
<h1>My First Web Page</h1>
<p>My first paragraph.</p>
<button onclick="document.write(5 + 6)">Try it</button>
</body>
</html>

 

সতর্কতাঃ Document.write () মেথড শুধুমাত্র পরীক্ষার জন্য ব্যবহার করা উচিত।

innerHTML ব্যবহার

একটি HTML উপাদান অ্যাক্সেস করার জন্য, জাভাস্ক্রিপ্ট document.getElementById (ID) পদ্ধতি ব্যবহার করতে পারেন.
আইডি অ্যাট্রিবিউট HTML উপাদান সংজ্ঞায়িত করে. InnerHTML property,  HTML সামগ্রী সংজ্ঞায়িত করেঃ

উদাহরনঃ


<!DOCTYPE html>
<html>
<body>

<h1>My First Web Page</h1>
<p>My First Paragraph</p>

<p id="demo"></p>

<script>
document.getElementById("demo").innerHTML = 5 + 6;
</script>

</body>
</html>


 

আমাদের সকল উদাহরণে, আমরা প্রায়ই (একটি HTML উপাদান মধ্যে লেখা) innerHTML পদ্ধতি ব্যবহার করেছি ।

console.log() ব্যবহার

আপনার ব্রাউজারে, আপনি তথ্য প্রদর্শন console.log () পদ্ধতি ব্যবহার করতে পারেন.

ব্রাউজার এ F12 press করে কনসোল, সক্রিয় এবং মেনু "কনসোল" নির্বাচন করুন।

উদাহরনঃ


<!DOCTYPE html>
<html>
<body>

<h1>My First Web Page</h1>
<p>My first paragraph.</p>

<script>
console.log(5 + 6);
</script>

</body>
</html>


 

 

ধন্যবাদ, আশা করি বিষয়টি সকলেই বুঝতে পেরেছেন 🙂

জাভাস্ক্রিপ্ট ফাংশন (JavaScript Functions)

জাভাস্ক্রিপ্ট ফাংশন (JavaScript Functions)

শেখ আবুল হাশিম

 

যেকোন প্রোগ্রামিং ল্যাংগুয়েজ শিখতে যান ফাংশন হচ্ছে তার মুল জিনিসগুলির মধ্যে একটা। সব ল্যাংগুয়েজেই ফাংশন আছে আর সবখানেই ফাংশনের মুল কনসেপ্ট টা একই।তবে সহজ। ফাংশন আর কিছুই না শুধু একটা কোডব্লক কে নাম দেয়া। পরে কোডের যেকোন জায়গায় সেই নাম ধরে ডাকলে কোডব্লকটি এক্সিকিউট হবে। যেমন নিচে একটা ছোট ফাংশন লিখেছি আর নাম দিয়েছি popup() এবং ইনপুট ট্যাগের ভিতর এই নাম ধরে ডাক দিয়েছি (এটাকে বলে ফাংশন কল করা)।

 

01.<html>

02.<head>

03.<script type="text/javascript">

04.function popup() {

05.alert("Hello Webcoachbd")

06.}

07.</script>

08.</head>

09.<body>

10.<input type="button" onclick="popup()" value="popup">

11.</body>

12.</html>

 

এখন বাটনে ক্লিক করলেই popup() ফাংশনটি কল হবে এবং এর ভিতর সেকেন্ড ব্রাকেটের মধ্যে থাকা কোডটুকু এক্সিকিউট হবে। onclick হচ্ছে ইভেন্ট।ইভেন্ট এর বিষয়ে এরপরের টিউটোরিয়ালে আলোচনা আছে।

যাইহোক ফাংশন লেখার সময় প্রথমে function এই শব্দটি এরপর ফাংশনের যেকোন নাম যেমন আমি দিয়েছি popup(). ফাংশনের নাম দেয়ার সময় আপনি ইচ্ছেমত যেকোন নাম দিতে পারেন। আপনি ইচ্ছে করলেই করতে পারেন তার মানে এই নয় যে আপনার এমনই করা উচিৎ। বরং ফাংশনের নাম দেয়ার সময় প্রাসঙ্গিক নাম দেয়া ভাল। যেমন ধরুন দুটি সংখ্যার যোগফল এর মান বের করার জন্য একটা ফাংশন লিখলেন এটার নাম হতে পারে getAddition(). জাভাস্ক্রিপ্টের কিছু সংরক্ষিত নাম আছে, এসব নাম বা শব্দগুলি ফাংশনের নাম কিংবা ভেরিয়েবলের নাম হিসেবে ব্যবহার করা যাবেনা।

ফাংশনে প্যারামিটার ব্যবহার করা

আপনি যখন ফাংশন লিখবেন তখন এখানে প্যারামিটার ব্যবহার করতে পারেন।এই প্যারামিটার প্রথম ব্রাকেটের ভিতর রাখতে হবে,এগুলি একধরনের ভেরিয়েবল।যদি কোন প্যারামিটার না থাকে তাহলে প্রথম ব্রাকেটের ভিতর কিছু থাকবেনা। যেমন popup() ফাংশনটি দেখুন এখানে কোন প্যারামিটার নেই।প্যারামিটার সহ একটি ফাংশন

01. <html>

03. <head>

05. <script type="text/javascript">

07. function getAddition(firstNumber,secondNumber){

09. var result;

11. result = firstNumber + secondNumber;

13. return result;

15. }

17. var myResult = getAddition(10,20);

19. alert(myResult);

21. </script>

23. </head>

25. <body>

27. </body>

29. </html>

ব্যাখ্যাঃএখানে ফাংশনটিতে দুটি প্যারামিটার আছে firstNumber এবং secondNumber.এরপর একটা ভেরিয়েবল ডিক্লেয়ার করেছি যার নাম result এবং এই ভেরিয়েবলে প্যারামিটার দুটি যোগ করেছি।সবশেষে result রিটার্ন করেছি।এটা ফাংশনের একটা গুরত্বপূর্ন বৈশিষ্ট্য যে আপনি শুধু একটা মান ফেরৎ (রিটার্ন) পাঠাতে পারেন। return স্টেটমেন্ট ব্যবহার করে এটা করা যায়।

একটা জিনিস মনে রাখতে হবে যে যখন return স্টেটমেন্ট ব্যবহার করবেন তখন এই স্টেটমেন্টের পর আর কোন কোড কাজ করবেনা।একটা ফাংশন return স্টেটমেন্ট দেখলেই সে সংশ্লিষ্ট মান টি রিটার্ন করে কোড পড়া বন্ধ করে দেয়।

যাইহোক এরপর ১৭ নম্বর লাইনে দেখুন ফাংশনটিকে কিভাবে কল করেছি।return স্টেটমেন্ট দিয়ে পাঠানো মান এভাবে একটা ভেরিয়েবল ডিক্লেয়ার করে ধরতে হয়।যেমন আমি var myResult দিয়ে করেছি।এরপর alert() ফাংশন দিয়ে আউটপুট এনেছি।যদি alert(result) দেন তাহলে হবেনা।কারন তো বললামই যে রিটার্নকৃত মান ভেরিয়েবল দিয়ে ধরতে হয়।

সবশেষে getAddition এ দুটি আর্গুমেন্ট পাঠিয়েছি ১০ এবং ২০ কারন প্যারামিটার দুটি আছে।যতগুলি প্যারামিটার আছে ফাংশনটি কল করার সময় ততগুলি আর্গুমেন্ট পাঠাতে হবে।

*ফাংশনের ভিতরে কোন প্যারামিটার বা ভেরিয়েবল ব্যবহার করলে সেই ভেরিয়েবলের প্রভাব বাইরে থাকবেনা।এমনকি একই নামের একটা ভেরিয়েবল যদি ফাংশনের বাইরে থাকে তারপরেও ভেরিয়েবল দুটি সম্পূর্ন আলাদা।

জাভাস্ক্রিপ্ট অবজেক্ট (JavaScript Objects)

জাভাস্ক্রিপ্ট অবজেক্ট (JavaScript Objects)

-পায়েল চৌধুরী

 

বাস্তব জীবনের দৃষ্টান্তে অবজেক্টস, প্রপার্টিস এবং মেথডস

বাস্তবে একটি গাড়ী হল একটা অবজেক্ট.

গাড়ীর ওজন, রং এসব হল একটি গাড়ীর প্রপার্টিজ এবং এর চালু হবার এবং থামার মেথড আছে.

 

Object Properties Methods
 Car car.name = Fiat car.start()
car.model = 500 car.drive()
car.weight = 850 kg car.brake()
car.color = white car.stop()

 

সকল গাড়ির বৈশিষ্ট্য (Prperties) একই, কিন্ত এর মান গাড়ী থেকে গাড়ী থেকে পৃথক।
সকল গাড়ির পদ্ধতি (Methods) একই, কিন্তু মেথড সম্পন্ন হওয়ার সময় ভিন্ন হয়।

জাভাস্ক্রিপ্ট অবজেক্ট

আমরা জানি যে, জাভাস্ক্রিপ্ট ভেরিয়েবল তথ্য মানের ধারক (data values) হিসাবে কাজ করে।

নীচের কোডের ভেরিয়েবলটি গাড়ীর নামের (Fiat) একটি সাধারণ মান (simple value) হিসাবে দেয়া হয়েছে:


var car = "Fiat";


বস্তু (Objects) সমূহও ভেরিয়েবল। কিন্তু এরা অনেক মান ধারণ করতে পারে। নীচের কোডের ভেরিয়েবলটি গাড়ীর নামের অনেকগুলো মান (Fiat, 500, white হিসাবে দেয়া হয়েছে:


var car = {type:"Fiat", model:500, color:"white"};


 

মানসমূহ name:value এভাবে জোড়ায় (name কোলন value) লেখা হয়।
জাভাস্ক্রিপ্ট অবজেক্টস নামকৃত মানসমূহের (named values) ধারক হিসাবে কাজ করে।

অবজেক্ট প্র্রপার্টিজ

name:value জোড়াকে (জাভাস্ক্রিপ্ট অবজেক্টস এ) প্র্রপার্টিজ বলে।


var person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};


Property Property Value
firstName John
lastName Doe
age 50
eyeColor blue

 

অবজেক্টস মেথডস

মেথডস হল ক্রিয়াসমূহ যা অবজেক্টস এর উপর সম্পন্ন করা হয়।
মেথডস সমূহ ফাংশন ডেফিনেশন হিসাবে প্র্রপার্টিজ এর মধ্যে সংরক্ষণ করা হয়।

Property Property Value
firstName John
lastName Doe
age 50
eyeColor blue
fullName function() {return this.firstName + " " + this.lastName;}

জাভাস্ক্রিপ্ট অবজেক্ট যে নামকৃত ভেলু সমূহের ধারক হিসাবে কাজ করে তাদের প্র্রপার্টিজ এবং মেথডস বলে।

অবজেক্ট নির্ধারণ

জাভাস্ক্রিপ্ট অবজেক্ট এর উদাহারণ:


var person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};


স্পেস এবং লাইন ব্রেক গুরুত্বপূর্ণ নয়। একটি অবজেক্ট নির্ধারণ করতে একাধিক লাইন জুড়ে লিখতে হতে পারে:
উদাহারণ:


var person = {
     firstName:"John",
     lastName:"Doe",
     age:50,
     eyeColor:"blue"
 };

 

অবজেক্ট প্র্রপার্টিজ এর ব্যবহার( Accessing Object Properties)

আমরা দু’ভাবে অবজেক্ট প্র্রপার্টিজ ব্যবহার করতে পারি:


objectName.propertyName


অথবা


objectName[propertyName]


উদাহারণ ১:


person.lastName;


 

 

উদাহারণ ২:


person["lastName"];


 

 

অবজেক্ট মেথডস এর ব্যবহার (Accessing Object Methods)

নিম্নলিখিত অনুযায়ী আমরা Object Methods ব্যবহার করতে পারি:


objectName.methodName()


 

উদাহারণ 1


name = person.fullName();


 

যদি fullName প্র্রপার্টি, () ছাড়া ব্যবহার করা হয়, তবে এটা আমাদের ফাংশন ডেফিনেশন এ ফেরত নিয়ে যাবে:
উদাহারণ 2


name = person.fullName;


 

আপনি কি জাভাস্ক্রিপ্ট এ Strings, Numbers, and Booleans কে Objects হিসেবে নির্ধারণ করেন

জাভাস্ক্রিপ্ট এ Strings, Numbers, and Booleans কে Objects হিসাবে কখনো ডিক্লেয়ার করবেননা!
যখন জাভাস্ক্রিপ্ট এ কোন ভেরিয়েবলকে "new", কিওয়ার্ড দ্বারা ডিক্লেয়ার করা হয় তখন সে ভেরিয়েবলটি একটা অবজেক্ট তৈরী করে :


var x = new String();        // Declares x as a String object
var y = new Number();        // Declares y as a Number object
var z = new Boolean();       // Declares z as a Boolean object

String, Number, and Boolean অবজেক্টস পরিহার করুন। এগুলো আপনার কোডকে জটিল করবে এবং কাজের গতিকে ধীর করে দিবে।

আমাদের সাথে থাকুন, পরবর্তীতে অবজেক্টের উপর আরো টিউটোরিয়াল পাবেন।

জাভাস্ক্রিপ্ট ইভেন্ট (JavaScript Events)

শরিফুল ইসলাম
Job category-Php Coder

এইচটিএমএল ইভেন্ট হল এমন কিছু জিনিস যা এইচটিএমএল এর উপাদানের মধ্যে ঘটে থাকে। যখন javascript এইচটিএমএল পেজ এর মধ্যে ব্যবহার হয় ,তখন javascript ওই ইভেন্ট গুলোর উপর প্রতিক্রিয়া করে।

এইচটিএমএল ইভেন্ট

একটি এইচটিএমএল ইভেন্ট তাই করে যা ব্রাউজার করে অথবা কোন ইউজার কিছু করে।

এখানে কিছু এইচটিএমএল ইভেন্ট দেয়া হল

  • এইচটিএমএল ওয়েবপেজ লোড হওয়া শেষ হয়েছে
  • ইনপুট ফিল্ড পরিবর্তন হয়েছে
  • এইচটিএমএল বাটন এ ক্লিক করা হয়েছে।

আপনি যখন কিছু করতে চান তখন কোন ইভেন্ট ঘটতে পারে।

ইভেন্ট চিহ্নিত হওয়ার পর javascript আপনার কোড কার্যে পরিণত করে।

এইচটিএমএল জাভাস্ক্রিপ্ট কোড এর সাথে ইভেন্ট handler attribute ব্যবহারের অনুমতি দেয় এবং এইচটিএমএল এলিমেন্ট এর সাথে যুক্ত করতে হয়।

একক উদ্ধৃতি চিহ্ন দিয়ে:


<some-HTML-element some-event='some JavaScript'>


 

ডবল উদ্ধৃতি চিহ্ন দিয়ে:


<some-HTML-element some-event="some JavaScript">


 

এই উদাহরনে কোড এর মাধ্যমে বাটন এলিমেন্ট এর মধ্যে একটি onclick attribute ব্যবহার করা হয়েছে।
যেমন


<button onclick="getElementById('demo').innerHTML=Date()">The time is?</button>


উপরের উদাহরণ এ javascript কোড এর একটি উপাদান এবং সেই সাথে id=”demo” এ পরিবর্তন করবে।

 

পরবর্তী উদাহরনে innerhtml ব্যবহার করে javascript কোড নিজের উপাদানের কোন কনটেন্ট কে পরিবর্তন করবে।
যেমন


<button onclick="this.innerHTML=Date()">The time is?</button>


 

অনেকসময় javascript কোড কয়েক লাইনের হয়ে থাকে। ইভেন্ট অ্যাট্রিবউট ফাংশন কল করার ক্ষেত্রে এটি খুবই সাধারন।
যেমন :


<p>Click the button to display the date.</p>

<button onclick="displayDate()">The time is?</button>

<script>
function displayDate() {
    document.getElementById("demo").innerHTML = Date();
}
</script>

<p id="demo"></p>

অধিক ব্যবহৃত এইচটিএমএল ইভেন্ট

ইভেন্ট

বিবরণ

Onchange এইচটিএমএল উপাদান পরিবর্তন হয়।
Onclick ব্যবহারকারী এইচটিএমএল উপাদান এর উপর ক্লিক করতে পারে।
Onmouseover ব্যবহারকারী এইচটিএমএল উপাদান এর উপর মাউস মুভ করলে ইভেন্ট কার্যকর হয়।
Onmouseout ব্যবহারকারী এইচটিএমএল এর কোন উপাদান এর উপর থেকে মাউস সরালে ইভেন্ট কার্যকর হয়।
Onkeydown ব্যবহারকারী কিবোর্ড এর কোন বাটন প্রেস করলে ইভেন্ট কার্যকর হয়।
Onload ব্রাউজার পেজ লোড হওয়া বন্ধ করে।

জাভাস্ক্রিপ্ট নাম্বার মেথড (JavaScript Number Methods)

জাভাস্ক্রিপ্ট সংখ্যা পদ্ধতি

নয়ন চন্দ্র দত্ত

 

সংখ্যা পদ্ধতি আপনাকে সংখ্যা নিয়ে কাজ করতে সাহায্য করবে।

গ্লোবাল পদ্ধতি

জাভাস্ক্রিপ্ট গ্লোবাল ফাংশন সমস্ত জাভাস্ক্রিপ্ট ডেটা টাইপে ব্যবহার করা যেতে পারে। যখন সংখ্যা নিয়ে কাজ করবেন, এইগুলো সবচেয়ে প্রাসঙ্গিক পদ্ধতিঃ

পদ্ধতিঃ Number()

ব্যাখ্যাঃ তার বিচার থেকে রূপান্তরিত একটি নম্বর প্রদান করে।

পদ্ধতিঃ parseFloat()

ব্যাখ্যাঃ Parses যা এটি বিচার করে এবং একটি ফ্লোটিং পয়েন্ট সংখ্যা ফিরিয়ে দেয়।

পদ্ধতিঃ parseInt()

ব্যাখ্যাঃ Parses যা এটি বিচার করে এবং একটি পূর্ণসংখ্যা ফিরিয়ে দেয়।

 

সংখ্যা পদ্ধতি

জাভাস্ক্রিপ্ট সংখ্যা পদ্ধতি এমন পদ্ধতি যা সংখ্যার উপর ব্যবহার করা যেতে পারেঃ

পদ্ধতিঃ toString()

ব্যাখ্যাঃ স্ট্রিং হিসেবে একটি নম্বর ফিরিয়ে দেয়।

পদ্ধতিঃ toExponential()

ব্যাখ্যাঃ বৃত্তাকার এবং সূচক স্বরলিপি ব্যবহার করে লেখা একটি সংখ্যা সঙ্গে একটি স্ট্রিং ফিরিয়ে দেয়।

পদ্ধতিঃ toFixed()

ব্যাখ্যাঃ দশমিকে একটি নির্দিষ্ট নম্বর সঙ্গে বৃত্তাকার এবং লিখিত একটি সংখ্যা সঙ্গে একটি স্ট্রিং ফিরিয়ে দেয়।

পদ্ধতিঃ toPrecision()

ব্যাখ্যাঃ একটি নির্দিষ্ট দৈর্ঘ্য সঙ্গে লিখিত নম্বর দিয়ে একটি স্ট্রিং ফিরিয়ে দেয়।

পদ্ধতিঃ valueOf()

ব্যাখ্যাঃ নম্বর হিসাবে একটি সংখ্যা ফিরিয়ে দেয়।

[ সব সংখ্যা পদ্ধতি একটি নতুন ভেরিয়েবল এ ফিরে আসে। কিন্তু তারা মূল পরিবর্তনশীল পরিবর্তন করবেন না। ]

 

toString() পদ্ধতি

toString () স্ট্রিং হিসেবে একটি নম্বর ফিরিয়ে দেয়। সব সংখ্যা পদ্ধতিতে যেকোনো ধরনের সংখ্যা ব্যবহার করা যেতে পারে (লিটারেল, ভেরিয়েবল, বা এক্সপ্রেশন)।

উদাহরণ


<!DOCTYPE html>
<html>
<body>
<p>The toString() method converts a number to a string.</p>
<p id="demo"></p>
<script>
var x = 123;
document.getElementById("demo").innerHTML =
   x.toString() + "<br>" +
   (123).toString() + "<br>" +
   (100 + 23).toString();
</script>
</body>
</html>

 

toExponential() পদ্ধতি

toExponential () বৃত্তাকার এবং সূচক স্বরলিপি ব্যবহার করে লেখা সংখ্যার সঙ্গে একটি স্ট্রিং ফিরিয়ে দেয়। একটি প্যারামিটার দশমিক পয়েন্ট পিছনে অক্ষর সংখ্যা সংজ্ঞায়িত করেঃ উদাহরণ


<!DOCTYPE html>
<html>
<body>

<p>The toExponential() method returns a string, with the number rounded and written 
using exponential notation.</p>

<p>An optional parameter defines the number of digits behind the decimal point.</p>

<p id="demo"></p>

<script>
var x = 9.656;
document.getElementById("demo").innerHTML =
    x.toExponential() + "<br>" + 
    x.toExponential(2) + "<br>" + 
    x.toExponential(4) + "<br>" + 
    x.toExponential(6);
</script>

</body>
</html>

প্যারামিটারটি ঐচ্ছিক। যদি আপনি এটি উল্লেখ না করেন, জাভাস্ক্রিপ্ট নম্বর সুসম্পন্ন হবে না।

 

toFixed() পদ্ধতি

toFixed () দশমিক দিয়ে লেখা সংখ্যার সঙ্গে একটি স্ট্রিং ফিরিয়ে দেয়।

উদাহরণ


<!DOCTYPE html>
<html>
<body>
<p>The toFixed() method rounds a number to a given number of digits.</p>
<p>For working with money, toFixed(2) is perfect.</p>
<p id="demo"></p>
<script>
var x = 9.656;
document.getElementById("demo").innerHTML =
     x.toFixed(0) + "<br>" +
     x.toFixed(2) + "<br>" +
     x.toFixed(4) + "<br>" +
     x.toFixed(6);
</script>
</body>
</html>

[ toFixed(2) টাকা দিয়ে কাজ করার জন্য যতোপযুক্ত। ]

 

toPrecision() পদ্ধতি

toPrecision () একটি নির্দিষ্ট দৈর্ঘ্য সঙ্গে লিখিত নম্বর দিয়ে একটি স্ট্রিং ফিরিয়ে দেয়।

উদাহরণ


<!DOCTYPE html>
<html>
<body>
<p>The toPrecision() method returns a string, with a number written with a 
specified length:</p>
<p id="demo"></p>
<script>
var x = 9.656;
document.getElementById("demo").innerHTML = 
     x.toPrecision() + "<br>" +
     x.toPrecision(2) + "<br>" +
     x.toPrecision(4) + "<br>" +
     x.toPrecision(6); 
</script>
</body>
</html>

 

ভেরিয়েবলকে নাম্বার এ  রূপান্তর

ভেরিয়েবলকে নাম্বার এ রূপান্তর করার জন্য জাভাস্ক্রিপ্ট এ তিনটি ফাংশন রয়েছে।

  1. Number() পদ্ধতি
  2. parseInt() পদ্ধতি
  3. parseFloat() পদ্ধতি

এই পদ্ধতিগুলো সংখ্যা পদ্ধতি না হলেও এগুলো গ্লোবাল জাভাস্ক্রিপ্ট পদ্ধতি।

 

Number() পদ্ধতি

Number() জাভাস্ক্রিপ্ট ভেরিয়েবল নাম্বার এ রূপান্তর কর‍্তে ব্যবহার করা যেতে পারেঃ

উদাহরণ


x = true;
Number(x);       // returns 1
x = false; 
Number(x);       // returns 0
x = new Date();
Number(x);       // returns 1404568027739
x = "10"
Number(x);       // returns 10
x = "10 20"
Number(x);       // returns NaN

 

parseInt() পদ্ধতি

parseInt () একটি স্ট্রিং এবং একটি পূর্ণ সংখ্যা ফিরিয়ে দেয়। স্পেস এর অনুমতি আছে। শুধুমাত্র প্রথম সংখ্যা প্রদান করেঃ উদাহরণ


parseInt("10");        // returns 10
parseInt("10.33");     // returns 10
parseInt("10 20 30");  // returns 10
parseInt("10 years");  // returns 10
parseInt("years 10");  // returns NaN


সংখ্যা রূপান্তরিত করা সম্ভব না হলে, NaN (না একটি নম্বর) ফিরিয়ে দেয়।

parseFloat() পদ্ধতি

parseFloat () একটি স্ট্রিং parses এবং একটি নম্বর parseInt () একটি স্ট্রিং parses এবং একটি সম্পূর্ণ নম্বর ফিরিয়ে দেয়। স্পেস এর অনুমতি আছে। শুধুমাত্র প্রথম সংখ্যা প্রদান করেঃ উদাহরণ


 parseFloat("10");        // returns 10
 parseFloat("10.33");    // returns 10.33
 parseFloat("10 20 30"); // returns 10
 parseFloat("10 years"); // returns 10
 parseFloat("years 10"); // returns NaN

সংখ্যা রূপান্তরিত করা সম্ভব না হলে, NaN (না একটি নম্বর) ফিরিয়ে দেয়।

 

valueOf() পদ্ধতি

valueOf () নম্বর হিসাবে একটি নম্বর প্রদান করে। উদাহরণ


 var x = 123;
 x.valueOf();          // returns 123 from variable x
 (123).valueOf();      // returns 123 from literal 123
 (100 + 23).valueOf(); // returns 123 from expression 100 + 23

জাভাস্ক্রিপ্ট এ, একটি সংখ্যা একটি আদি মান (typeof = number) হতে পারে বা একটি অবজেক্টও (typeof = object) হতে পারে।

[ জাভাস্ক্রিপ্ট এ, সব ডেটা টাইপ এর valueOf () এবং toString () পদ্ধতি আছে।]

 

জাভাস্ক্রিপ্ট ব্রেক এবং চলমান স্টেটমেন্ট (JavaScript Break and Continue)

মোঃ আব্দুল্লাহ

 

ব্রেক স্টেটমেন্ট সাধারনত একটি লুপ থেকে বেরিয়ে আসার জন্য ব্যবহৃত হয়।

কন্টিনিউ স্টেটমেন্ট লুপের একটি ইটারেশনকে অতিক্রম করে।

 

Break স্টেটমেন্ট

ইতিমধ্যে তুমি আগের অধ্যায়ে ব্রেক স্টেটমেন্টের ব্যবহার এই টিউটোরিয়ালে দেখেছ। এটি ব্যবহৃত হত একটি স্টেটমেন্টকে সুইচ স্টেটমেন্ট থেকে বের করার জন্য।
ব্রেক স্টেটমেন্ট একটি লুপ থেকে বের হওয়ার জন্যও ব্যবহৃত হয়।
ব্রেক স্টেটমেন্ট একটি চলমান লুপকে ভাঙে এবং লুপের পরবর্তী যদি কোন কোড থেকে থাকে তাহলে ঐ সকল কোডকে পরিচালিত করে।

উদাহরণ


for (i = 0; i < 10; i++) {
    if (i === 3) { break }
    text += "The number is " + i + "<br>";
}

 

স্টেটমেন্টের যদি একটি লাইনের কোড থাকে, তবে ব্রেকেট উপেক্ষা করা যেতে পারে।


for (i = 0; i < 10; i++) {
    if (i === 3) break;
    text += "The number is " + i + "<Br>";
}


Continue স্টেটমেন্ট

যদি একটি নির্দিষ্ট যুক্তির উদ্ভব হয় এবং এটি পরবর্তী লুপের সাথে ইটারেশনকে চালিয়ে যায় continue স্টেটমেন্ট লুপের ইটারেশনকে ভেঙে দেয় ।
নিম্নের উদাহারণে 3 উপেক্ষা করে যাবেঃ

উদাহরণ


 

 for (i = 0; i < 10; i++) {
     if (i === 3) continue;
     text += "The number is " + i + "<Br>";
 }

 

JavaScript Labels

জাভা স্ক্রিপ্ট স্টেটমেন্টকে চিহ্নিত করার জন্য আগে স্টেটমেন্টটিকে একটি লেবেল নাম ও কোলোন দিয়ে চিহ্নিত করতে হবে।
সিনটেক্স:


label:
statements


ব্রেক এবং কনটিনিউ স্টেটমেন্ট হল একমাত্র জাভা স্ক্রিপ্ট স্টেটমেন্ট যা কোড ব্লক থেকে বের হয়ে আসতে পারে।

সিনটেক্স


break labelname;

continue labelname;


 

 

কনটিনিউ স্টেটমেন্ট ( লেবেল রেফারেন্স সহ বা ছাড়া ) কেবল মাত্র লুপের ভেতরে ব্যবহৃত হতে পারে।

ব্রেক স্টেটমেন্ট লেবেল রেফারেন্স ছাড়া লুপ বা সুইচের ভিতরে ব্যবহৃত হতে পারে।

এটি লেবেল রেফারেন্স সহ যেকোনো জাভা স্ক্রিপ্টের কোড ব্লক থেকে বের হয়ে আসার জন্য ব্যবহৃত হতে পারে।

উদাহরণ


var cars = ["BMW", "Volvo", "Saab", "Ford"];
list: {
      text += cars[0] + "<br>";
      text += cars[1] + "<br>";
      text += cars[2] + "<br>";
      text += cars[3] + "<br>";
      break list;
      text += cars[4] + "<br>";
      text += cars[5] + "<br>";
}



	

জাভাস্ক্রিপ্ট ডেটস (JavaScript Dates)

ডেট মেথডের সাহায্যে ডেট ভেলু পাওয়া যায় এবং তা বেবহার করা যায়, যেমন বছর, মাস, দিন, মিনিট, সেকেন্ড, মিলিসেকেন্ড।

Date Get মেথড

একটি ডেটের কোন একটি অংশকে পাওয়ার জন্য ডেট গেট মেথড বেবহার করা হয়:

মেথড বর্ণনা
getDate() ডেট নাম্বার পাওয়ার জন্য যেমন: ১-৩১
getDay() সপ্তাহ নাম্বার পাওয়ার জন্য
getFullYear() বছরের সবগুলো ডিজিট পাওয়ার জন্য যেমন: ২০১৫
getHours() ঘন্টা জানার জন্য
getMilliseconds() মিলিসেকেন্ড হিসেবের জন্য
getMinutes() মিনিট হিসেবের জন্য
getMonth() মাস হিসেবের জন্য
getSeconds() সেকেন্ড হিসেবের জন্য
getTime() ১৯৭০ থেকে এই পর্যন্ত সময়কে মিলিসেকেন্ডে হিসেবের জন্য

 

getTime() মেথড

১৯৭০ থেকে এই পর্যন্ত সময়কে মিলিসেকেন্ডে হিসেবের জন্য এই মেথড বেবহৃত হয়।

উদাহরণ:


<script>
var d = new Date();
document.getElementById("demo").innerHTML = d.getTime();
</script>

 

getFullYear() মেথড

বছরের সবগুলো ডিজিট পাওয়ার জন্য এই মেথড বেবহৃত হয়।

উদাহরণ:


<script>
var d = new Date();
document.getElementById("demo").innerHTML = d.getFullYear();
</script>

 

getDay() মেথড

সপ্তাহ নাম্বার পাওয়ার জন্য এই মেথড বেবহৃত হয়।

উদাহরণ:


<script>
var d = new Date();
document.getElementById("demo").innerHTML = d.getDay();
</script>

 

Array ব্যবহার করেও এই মেথডে দেখানো যায়:


<script>
var d = new Date();
var days = ["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];
document.getElementById("demo").innerHTML = days[d.getDay()];
</script>

 

ডেট ইনপুট-পার্সিং

ডেট ইনপুট এর মাধ্যমে কোনো ডেটের ভেলু নিয়ে তাকে Date.parse() মেথডের সাহায্যে মিলিসেকেন্ডে কনভার্ট করা যায়, Date.parse() মেথড কোনো একটি ভেলু/ডেট এবং ১৯৭০ থেকে সেই পর্যন্ত সময়কে মিলিসেকেন্ডে কনভার্ট করে।

উদাহরণ ১:


<script>
var msec = Date.parse("March 21, 2012");
document.getElementById("demo").innerHTML = msec;
</script>

 

উদাহরণ ২:


<script>
var msec = Date.parse("March 21, 2012");
var d = new Date(msec);
document.getElementById("demo").innerHTML = d;
</script>

 

ডেট কম্পেয়ার

দুইটি ডেটের মধ্যে খুব সহজেই কম্পেয়ার করা যায়।

উদাহরণ:


var today, someday, text;
today = new Date();
someday = new Date();
someday.setFullYear(2100, 0, 14);

if (someday > today) {
    text = "Today is before January 14, 2100.";
} else {
    text = "Today is after January 14, 2100.";
}
document.getElementById("demo").innerHTML = text;

 

হিন্টস: জাভাস্ক্রিপ্টে মাস গনণা শূন্য থেকে শুরু হয়, জানুয়ারী ০ ডিসেম্বর ১১

 

জাভাস্ক্রিপ্ট স্ট্রিক্ট (JavaScript Use Strict)

জাভাস্ক্রিপ্ট স্ট্রিক্ট (JavaScript Use Strict)

মোহাম্মাদ আমিরুল ইসলাম (আরিফ)

ওয়েব ডিজাইনার অ্যান্ড ডেভেলপার

 

জাভাস্ক্রিপ্ট স্ট্রিক্ট (JavaScript Use Strict)

Use Strict "ইউজ স্ট্রিক্ট" হল এমন একটি জাভাস্ক্রিপ্ট কোড যা Strict mode "স্ট্রিক্ট মোডে" চালু হয়।

 

ইউজ স্ট্রিক্ট নির্দেশিকা (The "use strict" Directive)

ইউজ স্ট্রিক্ট নির্দেশিকা (The "use strict" Directive) জাভাস্ক্রিপ্ট 1.8.5 (ECMAScript version 5) এ নতুন ।

এটা কোন স্টেটমেন্ট নয় কিন্তু এটি একটি আক্ষরিক অভিব্যক্তি। এটি জাভাস্ক্রিপ্টটের নতুন ভার্সন । পুরাতন ভার্সন এ এটি ব্যাবহার করা যায় না।

Use Strict (ইউজ স্ট্রিক্ট) ব্যাবহার করার উদ্দেশ্য একটি নির্দিষ্ট কোড যা Strict mode (স্ট্রিক্ট মোড) এ চালু হবে ।

 

Strict mode "স্ট্রিক্ট মোডে" সাপোর্ট করে ব্রাউজারেরে এই ভার্সন গুলোতে

  • Internet Explorer from version 10
  • Firefox from version 4
  • Chrome from version 13
  • Safari from version 5.1
  • Opera from version 12

 

 

স্ট্রিক্ট মোডে ঘোষণা (Declaring Strict Mode):

Strict mode "স্ট্রিক্ট মোডে" ঘোষণা করা হয় Use Strict (ইউজ স্ট্রিক্ট) এর মাধ্যমে । এটি জাভাস্ক্রিপ্ট ফাইলের শুরুতে অথবা জাভাস্ক্রিপ্ট ফাংশন এর ভিতর ব্যাবহার করা হয়ে থাকে।

জাভাস্ক্রিপ্টের শুরুতে ঘোষণা করা হলো এর গ্লোবাল ব্যপ্তি থাকবে। (সকল কোড স্ট্রিক্ট মোড এ কার্যকর হবে)

ফাংশনের ভিতরে ঘোষণা করা হলো এর লোকাল ব্যপ্তি থাকবে। (শুধুমাত্র ফাংশনের ভিতরের কোডগুলো স্ট্রিক্ট মোড এ কার্যকর হবে)

জাভাস্ক্রিপ্ট ফাইলের শুরুতেঃ


<!DOCTYPE html>
<html>
<body>
<p>Global "use strict" declaration.</p>
<p>Activate debugging in your browser to see the error report.</p>
<script>
"use strict";
y= 3.14;       // This will cause an error.
myFunction();  // This will also cause an error.
function myFunction() {
      x = 3.14;
}
</script>
</body>
</html>

 

 

জাভাস্ক্রিপ্ট ফাংশন এর ভিতরঃ


 

<!DOCTYPE html>
<html>
<body>
<p>Local "use strict" declaration.</p>
<p>Activate debugging in your browser to see the error report.</p>
<script>
y= 3.14;        // This will not cause an error.
myFunction();   // This will cause an error.
function myFunction() {
     "use strict";
     x = 3.14;
}
</script>
</body>
</html>


"ইউজ স্ট্রিক্ট" সিনট্যাক্স (The "use strict"; Syntax)

সিনট্যাক্স যেন জাভাস্ক্রিপ্টটের পুরোনো সংস্করণের সাথে সামঞ্জস্যপূর্ণ হয় সেভাবে সাজান হয়েছে।

কম্পাইল করার ক্ষেত্রে একটি সাংখ্যিক আক্ষরিক (4 + + 5) অথবা একটি আক্ষরিক স্ট্রিং ("jamal kamal";) ব্যবহারে জাভাস্ক্রিপ্ট প্রোগ্রামে কোন পার্শ্ব প্রতিক্রিয়া নেই।এটি সাধারণত কম্পাইল হয় অবিদ্যমান ভেরিয়াবল এবং ডায়েস এর সাথে।

সুতরাং, "ইউজ স্ট্রিক্ট" শুধুমাত্র নতুন কম্পাইলার (সংগ্রহক) এ কাজ করে, যে কম্পইলাম এর মানে বুঝতে পারে ।

 

স্ট্রিক্ট মোড (Strict mode) কেন?

Strict mode “নিরাপদ” জাভাস্ক্রিপ্ট লিখতে সাহায্য করে ।

Strict mode পূর্ববর্তী  "bad syntax" পরিবর্তন করে  "real errors" গ্রহণ করে।

উদাহরণ হিসাবে, স্বাভাবিক জাভাস্ক্রিপ্ট, একটি মিসটাইপিং ভেরিয়াবল একটি গ্লোবাল ভেরিয়াবল সৃষ্টি করে।

Strict mode এর ক্ষেত্রে এগুলোকে "erorr" দেখাবে, এবং এখানে অসাবধানতাবশতঃ গ্লোবাল ভেরিয়াবল তৈরি হওয়া অসম্ভব।

সাধারন জাভাস্ক্রিপ্টটে একজন ডেভেলপার অ লিখনযোগ্য বৈশিষ্ট্য মান নির্ধারণের ক্ষেত্রে কোন ত্রুটি পাবেন না।

Strict mode যেকোন assignment to a non-writable property, a getter-only property, a non-existing property, a non-existing variable, or a non-existing object গুলোকে এরর "erorr" দেখাবে।

 

(Strict mode) স্ট্রিক্ট মোডে যা যা অনুমোদিত নয়

ঘোষণা না করে ভেরিয়েবল (প্রোপার্টি বা অবজেক্ট) ব্যবহার করা অনুমোদিত নয়।


"use strict";
x = 3.14;            // This will cause an error (if x has not been declared)

 

ভেরিয়াবল, ফাংশন অথবা এগ্রিমেন্ট মুছে ফেলা অনুমোদিত নয়।

 


"use strict";
x = 3.14;
delete x;                // This will cause an error

 

একাধিক বার প্রোপার্টি নির্ধারণ করা অনুমোদিত নয়।


"use strict";
var x = {p1:10, p1:20}; // This will cause an error


প্যারামিটার এর নাম নকল করা অনুমোদিত নয়।


"use strict";
function x(p1, p1) {};           // This will cause an error

 

অষ্টক গণনাপদ্ধতি এবং অব্যাহতি অক্ষর ব্যাবহার করা অনুমোদিত নয়।

 


"use strict";
var x = 010;           // This will cause an error
var y = \010;          // This will cause an error

 

রীড অনলি প্রপার্টি "read-only property" লেখা অনুমোদিত নয়।


"use strict";
var obj = {};
obj.defineProperty(obj, "x", {value:0, writable:false});
obj.x = 3.14;               // This will cause an error

 

 

গেট অনলি প্রপার্টি "get-only property" লেখা অনুমোদিত নয়।


"use strict";
var obj = {get x() {return 0} };
obj.x = 3.14;           // This will cause an error

 

আন ডিলিটএবল প্রপার্টি ডিলিট করা অনুমোদিত নয়।


"use strict";
delete Object.prototype;      // This will cause an error

স্ট্রিং "eval" ভেরিয়াবল হিসাবে ব্যাবহার করা যাবে না।


"use strict";
var eval = 3.14;             // This will cause an error

 

স্ট্রিং "arguments" ভেরিয়াবল হিসাবে ব্যাবহার করা যাবে না।


"use strict";
var arguments = 3.14;       // This will cause an error

"with statement" অনুমোদিত নয়।


"use strict";
with (Math){x = cos(2)};        // This will cause an error

 

ভবিষ্যতের জন্য সংরক্ষিত কীওয়ার্ড “keywords" গুলোঅনুমোদিত নয়।  সেগুলো হল :

  • implements
  • interface
  • package
  • private
  • protected
  • public
  • static
  • yield

 

জাভাস্ক্রিপ্ট টাইপ রূপান্তরকরণ (JavaScript Type Conversion)

আদনান নাহিদ
সরকারি তিতুমীর কলেজ

 

নাম্বার থেকে নাম্বারে পরিবর্তন, স্ট্রিং থেকে স্ট্রিং এ পরিবর্তন, বুলিয়ান থেকে বুলিয়ানে পরিবর্তন করা যায় ।

জাভাস্ক্রিপ্ট ডেটা প্রকারভেদ

মান ধারণ করতে পারে জাভাস্ক্রিপ্টে এমন 5 ধরনের ডাটা টাইপ আছে:

  • স্ট্রিং
  • নাম্বার
  • বুলিয়ান
  • অবজেক্ট
  • ফাংশন

অবজেক্ট ৩ ধরনের হয়:

  • অবজেক্ট
  • তারিখ
  • অ্যারে বা শ্রেণীবিন্যাস

এবং ২ ধরনের ডাটা টাইপের মান থাকতে পারে না :

  • অকার্যকর
  • অনির্দিষ্ট

 

typeof অপারেটর

একটি পরিবর্তনশীল জাভাস্ক্রিপ্ট এ ডাটা টাইপ খুঁজে পেতে অাপনি typeof অপারেটর ব্যবহার করতে পারেন ।
উদাহরণ


typeof "John"                 // Returns string
typeof 3.14                   // Returns number
typeof NaN                    // Returns number
typeof false                  // Returns boolean
typeof [1,2,3,4]              // Returns object
typeof {name:'John', age:34}  // Returns object
typeof new Date()             // Returns object
typeof function () {}         // Returns function
typeof myCar                  // Returns undefined (if myCar is not declared)
typeof null                   // Returns object

 

লক্ষ্য করুন :

  • NaN নাম্বারের ডাটা টাইপ
  • অ্যারের অবজেক্টের ডাটা টাইপ
  • তারিখের অবজেক্টের ডাটা টাইপ
  • Null অবজেক্টের ডাটা টাইপ
  • একটি অনির্ধারিত পরিবর্তনশীল এর ডাটা টাইপ

যদি জাভাস্ক্রিপ্ট অবজেক্ট অ্যারে (অথবা তারিখ) হয় তাহলে আপনি অর্থ বা সীমা নির্ধারণ করার ক্ষেত্রে typeof ব্যবহার করতে পারবেন না ।

 

Typeof ডাটা টাইপ

typeof অপারেটর পরিবর্তনশীল নয়। এটি একটি অপারেটর। অপারেটর (+ + - * /) এর কোন ডাটা টাইপ থাকে না ।
কিন্তু, typeof অপারেটর সবসময় একটি স্ট্রিং প্রদান করে operand এর সময় ।

 

কনস্টাকশন প্রপারটি

সব জাভাস্ক্রিপ্টের জন্যই constructor property, constructor function প্রদান করে ।
উদাহরণ


"John".constructor                 // Returns function String()   { [native code] }
(3.14).constructor                 // Returns function Number()   { [native code] }
false.constructor                  // Returns function Boolean()  { [native code] }
[1,2,3,4].constructor              // Returns function Array()    { [native code] }
{name:'John', age:34}.constructor  // Returns function Object()   { [native code] }
new Date().constructor             // Returns function Date()     { [native code] }
function () {}.constructor         // Returns function Function() { [native code] }

 

আপনি কনস্টাকশন প্রপারটি খুঁজে দেখতে পারেন এর কোন অবজেক্ট অ্যারে আছে কিনা (contains the word "Array") :
উদাহরণ


function isArray(myArray) {
    return myArray.constructor.toString().indexOf("Array") > -1;
}

 

আপনি কনস্টাকশন প্রপারটি খুঁজে দেখতে পারেন এর কোন অবজেক্ট তারিখ কিনা (contains the word "Date") :
উদাহরণ


function isDate(myDate) {
    return myDate.constructor.toString().indexOf("Date") > -1;
}

 

জাভাস্ক্রিপ্ট টাইপ রূপান্তরকরণ

জাভাস্ক্রিপ্ট ভেরিয়েবল নতুন একটি ভেরিয়েবলে এবং অন্য ডাটা টাইপে রূপান্তরিত করা যেতে পারে:

  • জাভাস্ক্রিপ্ট ফাংশন ব্যবহার করে
  • জাভাস্ক্রিপ্টের মাধ্যমে স্বয়ংক্রিয়ভাবে

 

নাম্বারকে স্ট্রিং এ রূপান্তর

গ্লোবাল পদ্ধতি String() দিয়ে সংখ্যাকে স্ট্রিং এ রূপান্তর করতে পারে ।

এটি যেকোনো ধরনের সংখ্যায় , লিটারেল, ভেরিয়েবল বা এক্সপ্রেশন এ ব্যবহার করা যায় :

উদাহরণ


String(x)         // returns a string from a number variable x
String(123)       // returns a string from a number literal 123
String(100 + 23)  // returns a string from a number from an expression

 

সংখ্যা পদ্ধতি toString() ও একই ধরনের কাজ করে ।
উদাহরণ


x.toString()
(123).toString()
(100 + 23).toString()

 

আপনি  (নাম্বার পদ্ধতি) অ্ধ্যায়ে সংখ্যাকে স্ট্রিং এ রূপান্তর করার আরো অনেক মেথড খুজে পাবেন :

পদ্ধতি বর্ণনা
toExponential() ব্যাখ্যামূলক একটি সংখ্যার সাথে সূচক নোটেশন ব্যবহার করে স্ট্রিং ফেরৎ পাওয়া
toFixed() স্থায়ী একটি নিদিষ্ট সংখ্যার সাথে দশমিক সংখ্যা ব্যবহার করে স্ট্রিং ফেরৎ পাওয়া
toPrecision() স্পষ্টতা একটি নিদিষ্ট দৈর্ঘ্যর সাথে একটি সংখ্যা ব্যবহার করে স্ট্রিং ফেরৎ পাওয়া

 

Booleans থেকে স্ট্রিং এ রূপান্তর

গ্লোবাল পদ্ধতি String(), Booleans কে স্ট্রিং এ রূপান্তর করতে পারে :
উদাহরণ


String(false)        // returns "false"
String(true)         // returns "true"

 

বুলিয়ান পদ্ধতি toString() ও একই ধরনের কাজ করে ।


false.toString()     // returns "false"
true.toString()      // returns "true"

 

তারিখকে স্ট্রিং এ রূপান্তর

গ্লোবাল পদ্ধতি String() দিয়ে তারিখকে স্ট্রিং এ রূপান্তর করতে পারে :


String(Date()) // returns Thu Jul 17 2014 15:38:19 GMT+0200 (W. Europe Daylight Time)

 

তারিখের পদ্ধতি toString() ও একই ধরনের কাজ করে ।
উদাহরণ


Date().toString() // returns Thu Jul 17 2014 15:38:19 GMT+0200 (W. Europe Daylight Time)

 

আপনি  (ডেট মেথড) অ্ধ্যায়ে সংখ্যাকে স্ট্রিং এ রূপান্তর করার আরো অনেক মেথড খুজে পাবেন :

মেথড বর্ণনা
getDate() তারিখকে সংখ্যা হিসেবে গ্রহণ করে (1-31)
getDay() সপ্তাহকে সংখ্যা হিসেবে গ্রহণ করে (0-6)
getFullYear() বছরের চারটি অঙ্ক গ্রহণ করে  (YYYY)
getHours() ঘন্টাকে গ্রহণ করে (0-23)
getMilliseconds() মিলি সেকেন্ড কে গ্রহণ করে (0-999)
getMinutes() মিনিটকে গ্রহণ করে (0-59)
getMonth() মাসকে গ্রহণ করে (0-11)
getSeconds() সেকেন্ড কে গ্রহণ করে (0-59)
getTime() সময়কে গ্রহণ করে (মিলিসেকেন্ড জানুয়ারী 1st 1970 থেকে)

 

স্ট্রিং কে সংখ্যায় রূপান্তর

গ্লোবাল পদ্ধতি Number() দিয়ে স্ট্রিংকে সংখ্যায় রূপান্তর করতে পারেন ।

স্ট্রিং নম্বর ধারণকারী ("3.14" ) কে (3.14 ) এ রূপান্তর ।

খালি স্ট্রিং কে 0 তে রূপান্তর ।

অন্যানগৈুলোকে NaN (নম্বর নয়) এ পরিবর্তন ।


Number("3.14")    // returns 3.14
Number(" ")       // returns 0
Number("")        // returns 0
Number("99 88")   // returns NaN

 

আপনি  (নাম্বর মেথড) অ্ধ্যায়ে স্ট্রিং কে সংখ্যায় রূপান্তর করার আরো অনেক মেথড খুজে পাবেন :

পদ্ধতি বর্ণনা
parseFloat একটি স্ট্রিং পার্স করুন এবং একটি ফ্লোটিং পয়েন্ট সংখ্যা ফেরৎ পান
parseInt একটি স্ট্রিং পার্স করুন এবং একটি পূর্ণসংখ্যা ফেরৎ পান

 

ইউনারী + অপারেটর

একটি ভেরিয়েবল (পরিবর্তনশীল নাম্বার) কে সংখ্যায় রূপান্তরের ক্ষেত্রে ইউনারী + অপারেটর ব্যবহার করা যেতে পারে :
উদাহরণ


 var y = "5";      // y is a string
 var x = + y;      // x is a number

 

যদি variable কে রূপান্তরিত করা না যায় তাহলে এটি সংখ্যাই থাকে যার মান হয় NaN (নম্বর নয়):
উদাহরণ


 var y = "John";   // y is a string
 var x = + y;      // x is a number (NaN)

 

Booleans কে নাম্বার এ রূপান্তর

গ্লোবাল পদ্ধতি Number() দিয়ে Booleans কে নাম্বারে রূপান্তর করতে পারেন :


Number(false)     // returns 0
Number(true)      // returns 1

 

তারিখ কে নাম্বারে রূপান্তর

গ্লোবাল পদ্ধতি Number() দিয়ে তারিখকে নাম্বারে রূপান্তর করতে পারেন :


d = new Date();
Number(d)          // returns 1404568027739

 

তারিখের পদ্ধতি toString() ও একই ধরনের কাজ করে ।


d = new Date();
d.getTime()        // returns 1404568027739

 

স্বয়ংক্রিয় রূপান্তর

যখন জাভাস্ক্রিপ্ট একটি "ভুল" ডাটা টাইপ নিয়ে কাজ করার চেষ্টা করে, এটি মানকে "সঠিক" ডাটা টাইপে রূপান্তর করতে চেষ্টা করে।
ফলাফল সবসময় আপনার আশানরূপ হয় না:


5 + null    // returns 5         because null is converted to 0
"5" + null  // returns "5null"   because null is converted to "null"
"5" + 2     // returns 52        because 2 is converted to "2"
"5" - 2     // returns 3         because "5" is converted to 5
"5" * "2"   // returns 10        because "5" and "2" are converted to 5 and 2

 

স্বয়ংক্রিয় স্ট্রিং রূপান্তর

জাভাস্ক্রিপ্ট স্বয়ংক্রিয়ভাবেই ভেরিয়েবল এর toString ফাংশনকে কল করে যখন অবজেক্ট বা ভেরিয়েবল থেকে "output" আশা করেন :


document.getElementById("demo").innerHTML = myVar;

// if myVar = {name:"Fjohn"}  // toString converts to "[object Object]"
// if myVar = [1,2,3,4]       // toString converts to "1,2,3,4"
// if myVar = new Date()      // toString converts to "Fri Jul 18 2014 09:08:55 
                                 GMT+0200"

 

সংখ্যা এবং Booleans ও রূপান্তরিত হয়, কিন্তু এবি খুব একটা দৃশ্যমান নয়:


// if myVar = 123             // toString converts to "123"
// if myVar = true            // toString converts to "true"
// if myVar = false           // toString converts to "false"

 

জাভাস্ক্রিপ্ট টাইপ রূপান্তর ছক

এই টেবিল বিভিন্ন প্রকার জাভাস্ক্রিপ্ট মানকে সংখ্যা, স্ট্রিং, এবং বুলিয়ান এ রূপান্তর প্রদর্শন করে :

আদি মান সংখ্যায় রূপান্তরিত স্ট্রিং এ রূপান্তরিত বুলিয়ানে রূপান্তরিত
false 0 "false" false
true 1 "true" true
0 0 "0" false
1 1 "1" true
"0" 0 "0" true
"1" 1 "1" true
NaN NaN "NaN" false
Infinity Infinity "Infinity" true
-Infinity -Infinity "-Infinity" true
"" 0 "" false
"20" 20 "20" true
"twenty" NaN "twenty" true
[ ] 0 "" true
[20] 20 "20" true
[10,20] NaN "10,20" true
["twenty"] NaN "twenty" true
["ten","twenty"] NaN "ten,twenty" true
function(){} NaN "function(){}" true
{ } NaN "[object Object]" true
null 0 "null" false
undefined NaN "undefined" false

নোট: কোটেশন যুক্ত মান স্ট্রিং নির্দেশ করে।

বোল্ড করা মান (কিছু) প্রোগ্রামার সমর্থন করে না।

 

জাভাস্ক্রিপ্ট ডেটা টাইপ (JavaScript Data Types)

জাভাস্ক্রিপ্ট ডেটা টাইপ (JavaScript Data Types)

লিখেছেনঃ মোহাম্মাদ আমিরুল ইসলাম (আরিফ)

ওয়েব ডিজাইনার অ্যান্ড ডেভেলপার

 

জাভাস্ক্রিপ্ট ডেটা টাইপের ধারনা

জাভাস্ক্রিপ্টে ডেটা টাইপ একটি গুরুত্বপূর্ণ বিষয়।

জাভাস্ক্রিপ্ট এর ডেটা টাইপ গুলো হলঃ (String, Number, Boolean, Array, Object.) স্ট্রিং, নাম্বার, বুলিয়ান, অ্যারে, অবজেক্ট । জাভাস্ক্রিপ্ট প্রোগ্রামিং করতে এই টাইপগুলো ব্যবহার করা হয়ে থাকে ।

যেমনঃ

var lastName = "Johnson";

উপরের জাভাস্ক্রিপ্টটি একটি স্ট্রিং টাইপ জাভাস্ক্রিপ্ট ।

 

var length = 16;

উপরের জাভাস্ক্রিপ্টটি একটি নাম্বার টাইপ জাভাস্ক্রিপ্ট ।

 

var cars = ["Saab", "Volvo", "BMW"];

উপরের জাভাস্ক্রিপ্টটি একটি অ্যারে টাইপ জাভাস্ক্রিপ্ট ।

 

var x = {firstName:"John", lastName:"Doe"};

উপরের জাভাস্ক্রিপ্টটি একটি অবজেক্ট টাইপ জাভাস্ক্রিপ্ট ।

 

 

জাভাস্ক্রিপ্ট স্ট্রিং (JavaScript String)

জাভাস্ক্রিপ্ট স্ট্রিংগুলো সাধারণত কয়কটি অক্ষররে সমষ্টি হয়ে থাকে । যেমনঃ “kamal”

স্ট্রিং গুলো  single quotes ‘’ অথবা double quotes “” এর ভিতর ব্যবহার হয়ে থাকে ।

যেমনঃ

var carName = " kamal";       [ এখানে double quotes “” ব্যবহার হয়েছে ]
var carName = ' kamal';        [ এখানে single quotes ‘’ ব্যবহার হয়েছে ]

 

আপনি স্ট্রিং এর ভিতরে quotes ব্যবহার করতে পারেন ।

 

যেমনঃ

var answer = "It's alright";                    [double quotes “” এর ভিতর single quote ‘’]
var answer = "He is called 'Johnny'";     [double quotes “” এর ভিতর single quotes ‘’]
var answer = 'He is called "Johnny"';    [single quotes ‘’ এর ভিতর double quotes “”]

 

 

কোড গুলো নিজে প্রয়োগ করুনঃ

DOCTYPE html>

<html>

<body>

 

<p id="demo"></p>

 

<script>

var carName1 = "Volvo XC60";

var carName2 = 'Volvo XC60';

var answer1 = "It's alright";

var answer2 = "He is called 'Johnny'";

var answer3 = 'He is called "Johnny"';

 

document.getElementById("demo").innerHTML =

carName1 + "
" +

carName2 + "
" +

answer1 + "
" +

answer2 + "
" +

answer3;

</script>

 

</body>

</html>

 

 

 

 

 

জাভাস্ক্রিপ্ট নাম্বার (JavaScript Numbers)

জাভাস্ক্রিপ্টটে শুধু মাত্র এক প্রকারের নাম্বার আছে । নাম্বারগুলো ডেসিম্যাল এবং ডেসিম্যাল ছাড়াও লেখা হতে পারে ।

যেমনঃ

var x1 = 34.00;    [ডেসিম্যাল দিয়ে লেখা]
var x2 = 34;        [ডেসিম্যাল ছাড়া লেখা]

 

অতিরিক্ত বড় অথবা অতিরিক্ত ছোট নাম্বার গুলো e দ্বারা লেখা হয় ।

যেমনঃ

var y = 123e5;                [ এখানে 123e5;=12300000 হবে]
var z = 123e-5;               [এখানে 123e-5;= 0.00123 হবে]

 

নির্দিষ্ট নাম্বার এর পরে e5 দিলে অই নাম্বার এর পরে পাঁচটি ০ যোগ হবে আর  e-5 দিলে অযুত এর আগে পয়েন্ট হবে ।

 

কোড গুলো নিজে প্রয়োগ করুনঃ

DOCTYPE html>

<html>

<body>

 

<p id="demo"></p>

 

<script>

var x1 = 34.00;

var x2 = 34;

var y = 123e5;

var z = 123e-5;

 

document.getElementById("demo").innerHTML = x1 + "
" + x2 + "
" + y + "
" + z

</script>

 

</body>

</html>

 

 

জাভাস্ক্রিপ্ট বুলিয়ান (JavaScript Booleans)

বুলিয়ান এর শুধু দুইটি মান আছে ।  সত্য ও মিথ্যা ।

যেমনঃ

var x = true;
var y = false;

 

জাভাস্ক্রিপ্ট অ্যারে (JavaScript Arrays)

জাভাস্ক্রিপ্ট অ্যারে গুলো তৃতীয় বন্ধনী দ্বারা লেখা হয়।  জাভাস্ক্রিপ্ট অ্যারে আইটেম গুলো কমা দ্বারা আলাদা করা হয় ।

কোড গুলো দেখতে এরকম হয়ঃ

var cars = ["Saab", "Volvo", "BMW"];

 

জাভাস্ক্রিপ্ট  অবজেক্ট [JavaScript Objects]

জাভাস্ক্রিপ্ট অবজেক্ট গুলো দ্বিতীয় বন্ধনী দ্বারা লেখা হয়।  জাভাস্ক্রিপ্ট অবজেক্ট আইটেম গুলো কমা দ্বারা আলাদা করা হয় ।

কোড গুলো দেখতে এরকম হয়ঃ

var person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};

জাভাস্ক্রিপ্ট রেগুলার এক্সপ্রেশন (JavaScript Regular Expressions in Bangla)

দীপঙ্কর সাহা

 

আজকে আপনাদের মাঝে একটি বিষয় শেয়ার করার জন্য হাজির হলাম।তা হল কিভাবে Java Script Regular  Expressions korte hoi. একটি রেগুলার এক্সপ্রেশন হল একটি অনুসন্ধান প্যাটার্ন যেটা টেক্সট এবং টেক্সট অপারেশন প্রতিস্তাপনের জন্য ব্যাবহার করা হয় বা ব্যাবহার করা যেতে পারে। এই রেগুলার এক্সপ্রেশন হল একটি অক্ষর বা একটি জটিল প্যাটার্ন ও হতে পারে। এই রেগুলার এক্সপ্রেশনটা টেক্সট অনুসন্ধানের সব ধরনের সঞ্চালন এবং টেক্সট অপারেশন প্রতিস্থাপনে ব্যাবহার করা যেতে পারে।

Syntax


Var patt = /bangle.SalearningSchool/ i

 

এই উধাহরনের বিষয় টা ব্যাখ্যা হল  /bangle.SalearningSchool/ i   একটি রেগুলার এক্সপ্রেশন

bangle.SalearningSchool  হল একটি অনুসন্ধান প্যাটার্ন যা অনিসন্ধান বক্স এ ব্যাবহার করা যেতে পারে।আর I হল একটি পরিবর্তক বা অনুসন্ধান বক্স হতে পরিবর্তন হয়।

 

স্ট্রিং মেথড এর ব্যবহার

জাভাস্ক্রিপ্ট, রেগুলার এক্সপ্রেশন এ প্রায়ই দুই স্ট্রিং পদ্ধতি ব্যবহার করা হয়। তা হল search() এবং replace()।

সার্চ মেথড বা পদ্ধতি এমন একটি ম্যাচ অনুসন্ধান করার জন্য একটি অভিব্যক্তি ব্যবহার করে, এবং ম্যাচ অবস্থান প্রদান করে.

রিপ্লেস মেথড বা পদ্ধতি এমন যা প্যাটার্ন প্রতিস্থাপিত হয় যেখানে একটি পরিবর্তিত স্ট্রিং প্রদান করে।

 

রেগুলার এক্সপ্রেশন এর সাথে search() স্ট্রিং এর ব্যবহার

এখানে অনুসন্ধান পদ্ধতি সার্চ যুক্তি হিসাবে একটি স্ট্রিং গ্রহণ করতে হবে. স্ট্রিং যুক্তি একটি রেগুলার এক্সপ্রেশন রূপান্তরিত করা হবে। উদাহরন সরুপ

একটি স্ট্রিং সার্চ এর ব্যাবহার নিচে দেখানো হলঃ


var str = "Visit W3Schools";
var n = str.search(/bangle.SalearningSchool/i);

 

রেগুলার এক্সপ্রেশন এর সাথে পরিবর্তন বা replace() স্ট্রিং এর ব্যবহার

উদাহরন সরুপ একটি স্ট্রিং রিপ্লেস এর ব্যাবহার নিচে দেখানো হলঃ


var str = "Visit Microsoft!";
 var res = str.replace(/bangle.SalearningSchool/i, "bangle.SalearningSchool");

 

রেগুলার এক্সপ্রেশন মোডিফায়ারস

মোডিফায়ারস বর্ণনা
i এটা অসংবেদি বা ইনসেনসিটিভ সঞ্চালন করতে বেবহারিত হয়।
g একটি আন্তর্জাতিক ম্যাচ সঞ্চালন করতে ব্যবহৃত হয়
m একাধিক সঞ্চালন করতে ব্যবহৃত হয়

 

রেগুলার এক্সপ্রেশন প্যাটার্নস

এক্সপ্রেসন্স বর্ণনা
[abc] বন্ধনীর মধ্যে অক্ষর কোন খুঁজুন
[0-9] বন্ধনীর মধ্যে সংখ্যার কোন খুঁজুন
(x/y) পৃথক বিকল্প কোনো খুঁজুন

 

Metacharacters একটি বিশেষ অর্থ দিয়ে অক্ষর

Metacharacters বর্ণনা
/d একটি সংখ্যা খুজা হয়
/s একটি হোয়াইটস্পেস অক্ষর খুঁজুন
/b শুরুতে বা একটি শব্দের শেষে একটি মিল খুঁজুন
/uxxxx হেক্সাডেসিমেল সংখ্যা xxxx দ্বারা নির্দিষ্ট ইউনিকোড অক্ষর খুঁজুন

 

Quantifiers define quantities

Quantifiers বর্ণনা
n+ অন্তত এক এন রয়েছে যে কোনো স্ট্রিং ম্যাচ
n* এন শূন্য বা তার বেশি দৃষ্টিগোচর রয়েছে যে কোনো  স্ট্রিং ম্যাচ
n? এন শূন্য বা একটি ঘটনার মধ্যে রয়েছে যে যেকোনো স্ট্রিং ম্যাচ

 

JavaScript typeof, null, and undefined. জাভাস্ক্রিপ্ট টাইপঅফ, নাল এবং আনডিফাইন্ড

জাভাস্ক্রিপ্ট টাইপঅফ, নাল এবং আনডিফাইন্ড

জাভাস্ক্রিপ্ট টাইপঅফ অপারেটর:
জাভাস্ক্রিপ্টে কোনো ডাটার টাইপ জানার জন্য টাইপঅফ অপারেটর ব্যবহার করা হয়।
উদাহরণ:
typeof "John" // Returns string
typeof 3.14 // Returns number
typeof false // Returns boolean
typeof [1,2,3,4] // Returns object
typeof {name:'John', age:34} // Returns object

নাল:
জাভাস্ক্রিপ্টে নাল মানে কিছুই নয়। এটা এমন কিছুকে বোঝায় যা এখন আর বিদ্যমান নেই।
জাভাস্ক্রিপ্টে নালকে একটি অবজেক্ট হিসেবে বিবেচনা করা হয়।
কোন ভেরিযবলকে নাল হিসেবে ডিক্লেয়ার করে খালি একটি অবজেক্ট তৈরী করা যায়।
var person = null; // Value is null, but type is still an object
একটি ভেরিযবলকে আনডিফাইন্ড হিসেবে ডিক্লেয়ার করেও খালি একটি অবজেক্ট তৈরী করা যায়।
var person = undefined; // Value is undefined, type is undefined

আনডিফাইন্ড:
জাভাস্ক্রিপ্টে আনডিফাইন্ড হলো একটি ভেরিযবল যার কোনো ভেলু নেই।
var person; // Value is undefined, type is undefined
একটি ভেরিযবলকে আনডিফাইন্ড ডিক্লেয়ার করার মাধ্যমেও ভেরিযবলের ভেলু খালি করা যায়।
person = undefined; // Value is undefined, type is undefined

আনডিফাইন্ড এবং নালের মধ্যে পার্থক্য:
typeof undefined // undefined
typeof null // object
null === undefined // false
null == undefined // true

জাভাস্ক্রিপ্ট সিনট্যাক্স (JavaScript Syntax)

জাভাস্ক্রিপ্ট সিনট্যাক্স

জাভাস্ক্রিপ্ট সিনট্যাক্স হলো কিছু নিয়মের সমষ্টি, এই প্রোগ্রাম কিভাবে কাজ করে সিনট্যাক্সের মাধ্যমে তাই নির্দেশ করা হয়।

 

জাভাস্ক্রিপ্ট প্রোগ্রাম

কম্পিউটার প্রোগ্রাম হলো কম্পিউটারের মাধ্যমে কোন কাজ সম্পাদন করার জন্য প্রয়োজনীয় নির্দেশসমূহের লিস্ট। প্রোগ্রামিং লেঙ্গুয়েজের এ সকল নির্দেশসমূহকে বলা হয় স্টেটমেন্ট।
জাভাস্ক্রিপ্টও একটি প্রোগ্রামিং লেঙ্গুয়েজ।
জাভাস্ক্রিপ্টের স্টেটমেন্টগুলোকে সেমিকোলন দ্বারা একটি থেকে অন্যটিকে আলাদা করা হয়।
উদাহরণ:
var x = 5;
var y = 6;
var z = x + y;

জাভাস্ক্রিপ্ট স্টেটমেন্টস

জাভাস্ক্রিপ্ট স্টেটমেন্টে নিম্নের বিষয়গুলো অন্তর্ভূক্ত রয়েছে।
ভেলু, অপারেটর, এক্সপ্রেসন, কীওয়ার্ড এবং কমেন্ট।

জাভাস্ক্রিপ্ট ভেলু

জাভাস্ক্রিপ্টে দুই ধরনের ভেলু রয়েছে: ফিক্সড ভেলু এবং ভেরিয়েবল ভেলু।
ফিক্সড ভেলুকে লিটারেল বলা হয় এবং ভেরিযবল ভেলুকে ভেরিয়েবল বলা হয়।

জাভাস্ক্রিপ্ট লিটারেলস

ফিক্সড ভেলু লেখার সবচেয়ে গুরুত্বপূর্ণ নিয়মটি হচ্ছে:
দশমিকসহ অথবা দশমিক ছাড়া শুধু নাম্বার লিখা।
10.50
1001
স্ট্রিংকে ডাবল কোটেশন অথবা সিঙ্গেল কোটেশনের মধ্যে লেখা।
"John Doe"
'John Doe'
এক্সপ্রেসনে শুধুমাত্র ফিক্সড ভেলু ব্যবহার করা।
5 + 6
5 * 10

জাভাস্ক্রিপ্ট ভেরিযবল

প্রোগ্রামিং লেঙ্গুয়েজে ডাটাকে স্টোর করার জন্য ভেরিযবল ব্যবহার করা হয়।
জাভাস্ক্রিপ্টে ভেরিযবলকে ডিফাইন করার জন্য var কীওয়ার্ড ব্যবহার করা হয়।
ভেরিযবলে ভেলু এসাইন করার জন্য সমান (=) চিহ্ন ব্যবহার করা হয়।
নিচের উদাহরণে x কে ভেরিযবল হিসেবে ডিফাইন করা হয়েছে এবং পরে x ভেরিযবলে ভেলু 6 এসাইন করা হয়েছে।
var x;
x = 6;

জাভাস্ক্রিপ্ট অপারেটর

কোনো ভেলুকে ভেরিযবলে এসাইন করার জন্য জাভাস্ক্রিপ্ট এসাইনমেন্ট অপারেটর ব্যবহার করে।
var x = 5;
var y = 6;
ভেলুর হিসাব করার জন্য জাভাস্ক্রিপ্ট এরেথমেটিক অপারেটর ব্যবহার করে।
(5 + 6) * 10

জাভাস্ক্রিপ্ট কীওয়ার্ডস

কি ধরনের কাজ সম্পাদন করতে হবে তা জাভাস্ক্রিপ্ট কীওয়ার্ডসের মাধ্যমে ডিফাইন করা হয়।
var কীওয়ার্ডের মাধ্যমে নতুন ভেরিযবল তৈরির নির্দেশনা দেয়া হয়।
var x = 5 + 6;
var y = x * 10

জাভাস্ক্রিপ্ট কমেন্টস

জাভাস্ক্রিপ্টের সকল স্টেটমেন্টই সম্পাদিত হয় না। // এর পরের কোড অথবা /* এবং */ এর ভেতরের কোডগুলো কমেন্ট হিসেবে নির্ধারিত হয়। যে কোনো কমেন্টকে বাতিল বলে গন্য করা হয় এবং তা সম্পাদিত হয় না।
var x = 5; // I will be executed
// var x = 6; I will NOT be executed

জাভাস্ক্রিপ্ট একটি কেস সেনসেটিভ লেঙ্গুয়েজ

জাভাস্ক্রিপ্টের সকল আইডেনটিফায়ার কেস সেনসেটিভ। lastName এবং lastname এই ভেরিযবল দুটি সম্পূর্ণ আলাদা।
lastName = "Doe";
lastname = "Peterson";
জাভাস্ক্রিপ্ট কখনোই কীওয়ার্ড var এর পরিবর্তে VAR অথবা Var কে গ্রহণ করবে না।

জাভাস্ক্রিপ্ট কারেক্টার সেট

জাভাস্ক্রিপ্ট ইউনিকোড কারেক্টার সেট ব্যবহার করে যার মধ্যে পৃথিবীর সকল কারেক্টার, পানচুয়েশন, সিম্বল রয়েছে।

জাভাস্ক্রিপ্ট ভেরিয়েবল (JavaScript Variables)

জাবাস্ক্রিপ্ট ভেরিয়েবল

মোঃ রফিকুল ইসলপাম

 

জাবাস্ক্রিপ্ট ভেরিইয়েবল হচ্ছে তথ্য্যের মান সংরক্ষণের জন্য একটি কনটেইনার ।

ভেরিয়েবলস কে নিচে x, y, z  এর সাহায্যে উদাহরণ হিসাবে দেয়া হল ।


Var x = 5;

Var y = 6;

Var z = x+y;


 

উপরের উদাহরণে যাহা বুঝায় তা হলঃ-

X এর মান হচ্ছে 5

Y এর মান হচ্ছে 6

Z এর  মান হচ্ছে 11

 

বীজগণিতের মত

নিচের উদাহরণে ভেরিয়েবল হচ্ছেঃ price1, price2 এবং total


Var  price1 = 5;

Var price2 = 6;

Var total = price1+ price2;


 

প্রোগ্রামিংটা হচ্ছে প্রায় বীজগনিতের মত। আমরা ভেরিয়েবল ব্যবহার করি (যেমন price1 এর মত) মূল্য  নির্ধারণের জন্য ।

প্রোগ্রামিংটা হচ্ছে প্রায় বীজগনিতের মত। আমরা এক্সপ্রেশনে ( যেমন total=price1+price2) এ ভেরিয়েবল ব্যবহার করি ।

 

জাভাস্ক্রিপ্ট শনাক্তকারী JavaScript Identifiers

সকল জাভস্ক্রিপ্ট ভেরিয়েবলকে অবশ্যিই অনন্য নাম দ্বারা চিহ্নিত করতে হবে।

এই অনন্য নামগুলোকে বলা হয় আইডেন্টিফায়ার (শনাক্তকারী)

আইডেন্টিফায়ার ছোট নাম দ্বারা (যেমন x এবং y) অথবা বিস্তারিতভাবে (যেমন age, sum, totalVolume) চিহ্নিত করা যেতে পারে।

ভেরিয়েবল এর নামের কাঠামোর সাধারণ নিয়ম হচ্ছে (অনন্য আইডেন্টিফায়ার):

  • নামে অক্ষর, সংখ্যা, আন্ডারস্কোর(_), এবং ডলার ($) এর চিহ্ন ব্যবহার করা যেতে পারে ।
  • নাম অবশ্যই অক্ষর দ্বারা শুরু করতে হবে।
  • নাম $ এবং _ চিহ্ন দ্বারাও শুরু করা যেতে পারে । (কিন্তু আমরা এই টিউটোরিয়াল এ এগুলো ব্যবহার করিনি।)
  • নাম কেস সংবেদনশীল (y এবং Y একই ভেরিয়েবল নয়)
  • সংরক্ষিত শব্দ (যেমন জাভাস্ক্রিপ্ট কীওয়ার্ড) নাম হিসাবে ব্যবহার করা যাবে না।

 

অ্যাসাইনমেন্ট অপারেটর

জাভাস্ক্রিপ্ট এ সমান চিহ্ন (=) হচ্ছে অ্যাসাইনমেন্ট অপারেটর, সমান সমান (equal to) অপারেটর নয়।

এটি বীজগণিতের নিয়ম মেনে চলে না। নিচের উদাহরণটি বীজগণিতে কোন অর্থ বহন করে না।


x = x + 5


জাভাস্ক্রিপ্টে এটি যথাযথ অর্থ বহন করে: এটি x এর মান x + 5 নির্ধারণ করে ।

(এটি x + 5 এর মান নির্ণয় করে এবং x এর স্থলে উক্ত মান বসায়। ফলে x এর মান 5 বৃদ্ধি পেয়েছে।)

নোট: “সমান সমান” (equal to) অপারেটর লেখার জন্য জাভাস্ক্রিপ্টে == ব্যবহার করা হয়।

জাভাস্ক্রিপ্ট ডেটা টাইপ

জাভাস্ক্রিপ্ট ভেরিয়েবল সংখ্যা যেমন 100 এবং টেক্সট যেমন "John Doe" ধারণ করতে পারে।

প্রোগ্রামিং এ টেক্সট এর মানকে টেক্সট স্ট্রিং বলা হয়।

জাভাস্ক্রিপ্ট অনেক ধরণের ডেটা পরিচালনা করতে পারে। কিন্তু এখনকার মত সংখ্যা এবং স্ট্রিং নিয়ে ভাবুন।

স্ট্রিং ডবল বা সিঙ্গেল কোটেশন এর ভিতরে লিখা হয়। সংখ্যা লিখতে কোন কোটেশন লাগে না।

যদি আপনি কোন সংখ্যার দুপাশে কোটেশন দেন তাহলে এটি স্ট্রিং হিসেবে বিবেচিত হবে।

উদাহরণ


var pi = 3.14;
var person = "John Doe";
var answer = 'Yes I am!';


 

 

জাভাস্ক্রিপ্ট ভেরিয়েবল ঘোষণা (তৈরি) করা

জাভাস্ক্রিপ্ট এ ভেরিয়েবল তৈরি করাকে বলা হয় ভেরিয়েবল ডিক্লেয়ার করা।

var কীওয়ার্ড এর সাহায্যে জাবাস্ক্রিপ্টে ভেরিয়েবল ডিক্লেয়ার করা যায়:


var carName;


ডিক্লিয়ারেশন করার পর ভেরিয়েবলটি খালি অবস্থায় থাকে (এর কোন মান নেই)
ভেরিয়েবল এর মান নির্ধারণের জন্য সমান চিহ্ন ব্যবহার করতে হয়:


carName = "Volvo";


আপনি ভেরিয়েবল ডিক্লেয়ার করার সময়ও মান নির্ধারণ করে দিতে পারেন:


var carName = "Volvo";


নিচের উদাহরণে আমরা একটি ভেরিয়েবল তৈরি করেছি এবং এর মান "Volvo" নির্ধারণ করে দিয়েছি।
এরপর id="demo" এর মাধ্যমে একটি এইচটিএমএল এর প্যারাগ্রাফের ভিতরে এর মান প্রদর্শন করেছি।


<p id="demo"></p>
<script>
var carName = "Volvo";
document.getElementById("demo").innerHTML = carName;
</script>

 

নোট: ভাল প্রোগ্রামিং অনুশীলন হলো সকল ভেরিয়েবল স্ক্রিপ্ট এর শুরুতে ডিক্লেয়ার করা।

 

একটি স্টেটমেন্ট, অনেকগুলো ভেরিয়েবল

আপনি একটি স্টেটমেন্ট এর মধ্যে অনেকগুলো ভেরিয়েবল ডিক্লেয়ার করতে পারেন।

স্টেটমেন্টটি var দিয়ে শুরু করুন এবং ভেরিয়েবলগুলো কমা দিয়ে পৃথক করুন:


var person = "John Doe", carName = "Volvo", price = 200;


ডিক্লেয়ারেশন একাধিক লাইনে ভেঙ্গেও লেখা যেতে পারে:


var person = "John Doe",
carName = "Volvo",
price = 200;


মান = অনির্দিষ্ট

কম্পিউটার প্রোগ্রাম এ প্রায়শই মান ছাড়াই ভেরিয়েবল ডিক্লেয়ার করা হয়। এই মান এমনকিছু যা নির্ণয় করে পাওয়া যাবে বা এমনকিছু যা পরবর্তীতে নির্ধারণ করে দেয়া হবে, যেমন ব্যবহারকারীর ইনপুট।

মান ব্যতীত কোন ভেরিয়েবল ডিক্লেয়ার করলে তা অনির্দিষ্ট (undefined) হিসেবে থাকে।

স্টেটমেন্টটি কার্যেপরিণত করার পর carName ভেরিয়েবলটির মান অনির্দিষ্ট অবস্থায় আছে:


var carName;


 

 

জাভাস্ক্রিপ্ট ভেরিয়েবল পূণ-ডিক্লেয়ার করা

যদি আপনি কোন ভেরিয়েবলকে পুণ-ডিক্লেয়ার করেন তাহলে এর মান অপরিবর্তিত অবস্থায় থোকে।
স্টেটমেন্টটি কার্যে পরিণত করার পরও carName ভেরিয়েবলটির মান এখনও "Volvo" ই আছে।
যেমন:


var carName = "Volvo";
var carName;


গাণিতিক জাভাস্ক্রিপ্ট

বীজগণিতিক নিয়ম অনুসারে জাভাস্ক্রিপ্ট ভেরিয়েবল দিয়ে = এবং + এর মতো অপারেটর দিয়ে গাণিতিক কাজগুলো করা যায়:


var x = 5 + 2 + 3;


আপনি স্ট্রিংও ব্যবহার করতে পারেন, কিন্তু সেগুলো শৃঙ্খলাবদ্ধ হতে হবে (added end-to-end)।

 

জাভাস্ক্রিপ্ট বলেন্স (JavaScript Booleans)

শরিফুল ইসলাম
Job category-Php Coder

 

Javascript বুলিয়ান এ মাত্র দুটি ভ্যালু আছে সত্য অথবা মিথ্যা (true or false)

 

বুলিয়ান ভ্যালু

প্রায়সময় প্রোগ্রামিং এ আপনার এমন ধরনের ডাটা টাইপ এর দরকার পরতে পারে যাতে একটি বা দুটি ভ্যালু থাকতে পারে যেমন

  • Yes/no
  • On/off
  • True/false

এইজন্য javascript এ বুলিয়ান ডাটা টাইপ আছে যেমন true এবং false

 

Boolean() ফাংশন

কোন একটি এক্সপ্রেশন বা একটি variable সত্য কিনা তা Boolean() ফাংশন ব্যবহার করে বাহির করা সম্ভব।

উদাহরণ

Boolean(10 > 9) সত্য দেখাবে

 

আরও যদি সোজাভাবে দেখি

উদাহরণ

10 > 9) সত্য দেখাবে

 

Comparisons এবং conditons

উদাহরনের কিছু তালিকা

অপারেটর

বর্ণনা

উদাহরণ

== equal to if (day == "Monday")
> greater than if (salary > 9000)
< less than if (age < 18)

 

বাস্তব ভ্যালু এর সাথে সবকিছু সত্য :

উদাহরণ


 100

3.14

-15

"Hello"

"false"

7 + 1 + 3.14

5 < 6

 

বাস্তব ভ্যালু ছাড়া সবকিছু মিথ্যা

বুলিয়ান ভ্যালু 0 হচ্ছে false
উদাহরণ


var x = 0;
 Boolean(x);// false আসবে

 

বুলিয়ান ভ্যালু -0 হচ্ছে false
উদাহরণ


 var x = -0;
 Boolean(x);// false আসবে

 

বুলিয়ান ভ্যালু “ফাকা” হচ্ছে false
উদাহরণ


var x = “”;
 Boolean(x);// false আসবে

 

বুলিয়ান ভ্যালু undefined হচ্ছে false
উদাহরণ


var x ;
 Boolean(x);// false আসবে

 

বুলিয়ান ভ্যালু null হচ্ছে false
উদাহরণ


var x = null;
 Boolean(x);// false আসবে

 

বুলিয়ান ভ্যালু false হচ্ছে false
উদাহরণ


var x = false;
 Boolean(x);// false আসবে

 

বুলিয়ান ভ্যালু NaN হচ্ছে false
উদাহরণ


var x = 10/”H”;
 Boolean(x);// false আসবে

 

বুলিয়ান প্রপার্টিজ এবং মেথড

প্রিমিটিভ ভ্যালু যেমন true or false, এদের কোন প্রপার্টিজ বা মেথড হয় না (কারন তারা কোন অবজেক্ট নয়)। কিন্তু javascript এ প্রিমিটিভ ভ্যালুতে প্রপার্টিজ এবং মেথড আছে। কারন javascript প্রিমিটিভ ভ্যালুকে অবজেক্ট হিসেবে গ্রহন করে যখন প্রপার্টিজ এবং মেথড গণনা করা হয়।

জাভাস্ক্রিপ্ট স্টেটমেন্ট (JavaScript Statements)

জাভাস্ক্রিপ্ট স্টেটমেন্ট (JavaScript Statements)

শরিফুল ইসলাম
Job category-Php Coder

 

এইচটিএমএল এ javascript statement হল কিছু নির্দেশনা যা ওয়েব ব্রাউজার দ্বারা গণনা করা হয়।

 

জাভাস্ক্রিপ্ট স্টেটমেন্ট Javascript statements

এই statement ব্রাউজার কে বলবে এইচটিএমএল এর একটি উপাদান id=”demo” এর মধ্যে Hello Dolly প্রিন্ট করার জন্য
উদাহরণ


document.getElementById("demo").innerHTML = "Hello Dolly.";


জাভাস্ক্রিপ্ট প্রোগ্রাম

প্রায় প্রত্যেক javascript প্রোগ্রাম এ অনেকগুলো statement থাকে । এই statement গুলো একের পর এক গণনা করে। এই উদাহরণ এ x,y,z এর ভ্যালু দেওয়া আছে , সবশেষে z প্রিন্ট করবে
উদাহরণ


var x = 5;
var y = 6;
var z = x + y;
document.getElementById("demo").innerHTML = z;


নোট: javascript প্রোগ্রামস (এবং javascript statements) কে বলা হয় javascript কোড।

 

 

সেমিকোলন  ;

সেমিকোলন javascript statement কে আলাদা করে । প্রত্যেকটি statement এর পরে সেমিকোলন যোগ করতে হয়।


a = 5;
b = 6;
c = a + b;


যখন আমরা সেমিকোলন ব্যবহার করব statement গুলোকে এক লাইনে লেখা যাবে


a = 5; b = 6; c = a + b;


নোট: ওয়েবে আপনি উদাহরণ গুলো হয়ত সেমিকোলন ছাড়া দেখতে পাবেন, প্রত্যেকটি statement এর শেষে যে সেমিকোলন ব্যবহার করতে হবে তার কোন ধরাবাধা নিয়ম নাই তবে ব্যবহার করা খুব ভাল।

 

জাভাস্ক্রিপ্ট ফাঁকা স্থান Javascript white space

Javascript একইসাথে একাধিক ফাকা স্পেস বাতিল করে । আমরা জাবাস্ক্রিপ্টকে সহজে পাঠ্য করার জন্য দরকার অনুযায়ী স্পেস যোগ করতে পারি।

যেমন


var person = "Hege";
var person="Hege";
JavaScript Line Length and Line Breaks:


 

জাভাস্ক্রিপ্ট লাইন এর দৈর্ঘ্য এবং লাইন ব্রেক

সবচেয়ে বেশি সুপাঠ্য করার জন্য প্রোগ্রামার রা একটি লাইনে ৮০ ক্যারেক্টার এর বেশি কোন কোড লিখেন না। যদি javascript statement একটি লাইনে না হয় তবে অপারেটর এর পরে ভেঙে নতুন লাইনে লেখা যাবে
উদাহরণ


document.getElementById("demo").innerHTML =
"Hello Dolly.";


 

Javascript কোড ব্লক

কোড ব্লক এর ভিতর javascript statements গুলো একসাথে গ্রুপ হিসেবে হতে পারে, যা দ্বিতীয় বন্ধনীর {….} ভিতর থাকবে। কোড ব্লক এর লক্ষ্য হল একসাথে statements গুলো গণনা করা। javascript ফাংশন এ এক জায়গায় ব্লক এর মধ্যে গ্রুপ statement গুলো একসাথে খুজে পাবেন।
উদাহরণ


function myFunction() {
     document.getElementById("demo").innerHTML = "Hello Dolly.";
     document.getElementById("myDIV").innerHTML = "How are you?";
 }


 

জাভাস্ক্র্টি কীওয়ার্ড Javascript keywords

javascript statement কোন না কোন কি-ওয়ার্ড দিয়ে শুরু হয়। যাতে সে সঠিকভাবে পারফর্ম করতে পারে। এদের লিস্টগুলি নিচে দেওয়া হল

break কোন সুইচ বা লুপ কে নষ্ট করে
continue একটি লুপ থেকে জাম্প করে আবার উপর থেকে শুরু করে
debugger javascript এর গননাকে থামিয়ে দেয়, ডিবাগিং ফাংশন কাল করে (যদি থাকে)
do ... while- একটি ব্লক statement কে গণনা করে এবং ব্লক কে পুনরাবৃত্তি করে যতক্ষণ না কন্ডিশন সত্য হয়।
for কন্ডিশন সত্য করার ক্ষেত্রে কোন ব্লক এর statement কে চিহ্নিত করে এবং গণনা করে
function একটি ফাংশন ঘোষণা করে
if ... else কন্ডিশন অনুযায়ী কোন ব্লক এর statement কে চিহ্নিত করে এবং গণনা করে
return একটি ফাংশন থেকে বের হয়ে যায়
switch বিভিন্ন কেস অনুযায়ী কোন ব্লক এর statement কে চিহ্নিত করে এবং গণনা করে
try ... catch কোন ব্লক statement এর এরর নিয়ন্ত্রণ করে
var-variable ভেরিয়েবল ঘোষণা করে

 

জাভাস্ক্রিপ্ট সুইচ বিবৃতি (JavaScript Switch Statement in Bangla)

শরিফুল ইসলাম
Job category-Php Coder

ভিন্ন ভিন্ন শর্তে ভিন্ন ভিন্ন কাজ পারফর্ম করার জন্য এই switch statement ব্যবহার করা হয়।

জাভাস্ক্রিপ্ট সুইচ বিবৃতি

Switch statement এর মাধ্যমে অনেকগুলো ব্লক কোড থেকে শর্ত অনুযায়ী একটি কোড পছন্দ করবে এবং সে অনুযায়ী কাজ করবে

Syntax


switch(expression) {
    case n:
        code block
        break;
    case n:
        code block
        break;
    default:
        default code block
}

  • এই expression একবার মূল্যায়ন করা হয়
  • এই expression যতগুলো কেস আছে তাদের মধ্যে তুলনা করে
  • যদি কোনটা মিলে যায় তবে তবে সেই কোড গণনা করে।

 

উদাহরণ

সপ্তাহের দিনের সংখ্যা দিয়ে আমরা সপ্তাহের নাম বের করব Sunday=0, Monday=1, Tuesday=2 ...


switch (new Date().getDay()) {
    case 0:
        day = "Sunday";
        break;
    case 1:
        day = "Monday";
        break;
    case 2:
        day = "Tuesday";
        break;
    case 3:
        day = "Wednesday";
        break;
    case 4:
        day = "Thursday";
        break;
    case 5:
        day = "Friday";
        break;
    case 6:
        day = "Saturday";
        break;
}

 

ফলাফল আসবে


Sunday


 

Break কীওয়ার্ড

Javascript কোড যখন break কি-ওয়ার্ড এ পৌঁছে তখন সে switch ব্লক কে ভেঙে দেয়। তখন অতিরিক্ত কোড গণনা করা ছেড়ে দেয়, বা ব্লকের ভিতর কোড টেস্ট করা থামিয়ে দেয়। যখন কোন statement মিলে যায় , তখন কাজ সম্পূর্ণ হয়, সে আর তখন অতিরিক্ত কোন টেস্টিং করে না।

 

ডিফল্ট কি-ওয়ার্ড

যদি কোন কেস না মিলে তাহলে ডিফল্ট ভাবে একটা কি ওয়ার্ড ডিসপ্লে করে যদি সেটি আমরা উল্লেখ করে দেই

উদাহরণ

যদি আজকে শনিবার বা রবিবার না হয় তাহলে ডিফল্ট মেসেজ ডিসপ্লে করবে


switch (new Date().getDay()) {
    case 6:
        text = "Today is Saturday";
        break;
    case 0:
        text = "Today is Sunday";
        break;
    default:
        text = "Looking forward to the Weekend";
}

 

ফলাফল


Looking forward to the Weekend


 

প্রচলিত কোড এবং fall through

অনেক সময় আপনি সুইচ ব্লক এর মধ্যে ভিন্ন ভিন্ন কেসে একই চদ এবাবহার করতে চান। আমাদের পরবর্তী উদাহরণ এ ঠিক এই ধরনের একটি একই কোড ব্লক দেখানো হয়েছে এবং সুইচ ব্লক এর মধ্যে ডিফল্ট কেস টি শেষ কেস হবে না।

উদাহরণ


switch (new Date().getDay()) {
    case 1:
    case 2:
    case 3:
    default:
        text = "Looking forward to the Weekend";
        break;
    case 4:
    case 5:
       text = "Soon it is Weekend";
        break;
    case 0:
    case 6:
       text = "It is Weekend";
}

যদি সুইচ ব্লকে ডিফল্ট ভাবে শেষ কেস না হয় , তাহলে মনে রাখতে হবে ব্রেক দিয়ে এর কাজ শেষ করতে হবে।

 

জাভাস্ক্রিপ্ট If…Else বিবৃতি (JavaScript If…Else Statements)

শরিফুল ইসলাম
Job category-Php Coder

Conditional statement ব্যবহার করা হয় ভিন্ন ভিন্ন শর্তে ভিন্ন ভিন্ন কোড পারফর্ম করার জন্য।

 

শর্তাধীন বিবৃতি

প্রায় আমরা যখন কোড লিখি তাতে আমরা ভিন্ন ভিন্ন শর্ত জুড়ে দেই যাতে সে শর্ত অনুযায়ী কাজ করতে পারে। এই statement ব্যবহার করার নিয়মগুলি নিচে দেওয়া হল

  • If ব্যবহার করার মাধ্যমে কোড গণনা হবে, যদি শর্ত সত্য হয়,
  • else ব্যবহার করার মাধ্যমে কোড গণনা হবে, যদি একই শর্ত সত্য না হয়,
  • Else if নতুন শর্ত টেস্ট করবে , যদি প্রথম শর্ত মিথ্যা হয়,
  • অনেকগুলো আলটারনেটিভ ব্লক কোড থেকে সঠিক কোড গণনা করার জন্য switch ব্যবহার করা হয়।

 

 

If statement syntax

If ব্যবহার করার মাধ্যমে কোড গণনা হবে, যদি শর্ত সত্য হয় ,


if (condition) {
    block of code to be executed if the condition is true
}

 

যদি if এর বদলে IF (বড় হাতের লেটার) ব্যবহার করা হয় তাহলে এরর আসবে

উদাহরণ

যদি ঘণ্টা ১৮ এর চেয়ে কম হয় তাহলে ডিসপ্লে করবে good day


if (hour < 18) {
    greeting = "Good day";
}

 

ফলাফল


Good day


 

Else statement

else ব্যবহার করার মাধ্যমে কোড গণনা হবে, যদি একই শর্ত সত্য না হয়,


if (condition) {
    block of code to be executed if the condition is true
} else {
    block of code to be executed if the condition is false
}

 

উদাহরণ

যদি ঘণ্টা ১৮ এর চেয়ে কম হয় তাহলে দেখাবে good day এবং যদি তা না হয় তাহলে দেখাবে good evening


if (hour < 18) {
greeting = "Good day";
} else {
greeting = "Good evening";
}


 

ফলাফল


Good day


 

Else if statement

Else if নতুন শর্ত টেস্ট করবে , যদি প্রথম শর্ত মিথ্যা হয়
Syntax


if (condition1) {
    block of code to be executed if condition1 is true
} else if (condition2) {
    block of code to be executed if the condition1 is false and condition2 is true
} else {
    block of code to be executed if the condition1 is false and condition2 is false
}

 

উদাহরণ

যদি সময় ১০ থেকে কম হয় তাহলে দেখাবে good morning ,যদি ২০ থেকে কম হয় তাহলে দেখাবে good day ,যদি তা না হয় তাহলে দেখাবে good evening


if (time < 10) {
    greeting = "Good morning";
} else if (time < 20) {
    greeting = "Good day";
} else {
    greeting = "Good evening";
}

 

ফলাফল


Good day


 

JavaScript Hoisting

জাভাস্ক্রিপ্ট হোস্টিং
ডাটা টাইপ ডিক্লেয়ারেশনের জন্য হোস্টিং জাভাস্ক্রিপ্টের একটি ডিফল্ট বেবস্থা।

জাভাস্ক্রিপ্টে ডিক্লেয়ারেশন হোস্ট পদ্ধতিতে হয়:
জাভাস্ক্রিপ্টে একটি ভেরিয়েবলকে ডিক্লেয়ার করার পূর্বে এটি বেবহার করা যায়।
অর্থাৎ ভেরিযবল টাইপ ডিক্লেয়ার করার আগেই তা বেবহার করা যায়।
নিচের উদাহরণ ১ এবং উদাহরণ ২ এর আউটপুট একই হবে:
উদাহরণ ১:
x = 5; // Assign 5 to x
elem = document.getElementById("demo"); // Find an element
elem.innerHTML = x; // Display x in the element
var x; // Declare x
উদাহরণ ২:
var x; // Declare x
x = 5; // Assign 5 to x
elem = document.getElementById("demo"); // Find an element
elem.innerHTML = x; // Display x in the element
উপরোক্ত উদাহরণগুলো বোঝার জন্য প্রথমে হোস্ট সম্পর্কে ভালো ধারণা থাকতে হবে।
হোস্টিং হলো জাভাস্ক্রিপ্টের একটি ডিফল্ট বেবস্থা যা কোনো একটি কারেন্ট ফাংশন বা স্ক্রিপ্টের সকল ডিক্লেয়ারেশন প্রথমেই ঠিক করে রাখে।

জাভাস্ক্রিপ্টে ইনিশিয়ালাইজ হোস্ট পদ্ধতিতে করা যায় না:
জাভাস্ক্রিপ্ট শুধুমাত্র ডিক্লেয়ারেশনকে হোস্ট করে ইনিশিয়ালাইজেশনকে হোস্ট করে না।
নিচের উদাহরণ ১ এবং উদাহরণ ২ এর আউটপুট এক হবে না:
উদাহরণ ১:
var x = 5; // Initialize x
var y = 7; // Initialize y
elem = document.getElementById("demo"); // Find an element
elem.innerHTML = x + " " + y; // Display x and y
উদাহরণ ২:
var x = 5; // Initialize x
elem = document.getElementById("demo"); // Find an element
elem.innerHTML = x + " " + y; // Display x and y
var y = 7; // Initialize y

উদাহরণ ২ এ y প্রথমে ইনিশিয়ালাইজ করা হয়নি তাই y এখানে আনডিফাইনড দেখাবে।
উদাহরণ ২ কে নিচের উপায়ে লিখতে হবে:
var x = 5; // Initialize x
var y; // Declare y
elem = document.getElementById("demo"); // Find an element
elem.innerHTML = x + " " + y; // Display x and y
y = 7; // Assign 7 to y

ভেরিয়েবলকে প্রথমে ডিক্লেয়ার করা:
জাভাস্ক্রিপ্টের অনেক ডেভলোপারদের কাছে হোস্টিং বিষয়টি সম্পূর্ণ পরিস্কার নয়, যদি কেউ হোস্টিং এর সঠিক বেবহার না জানে তাহলে প্রোগ্রামে অনেক বাগ থাকতে পারে, এই সমস্যা সমাধানের জন্য ভেরিয়েবলকে সবসময় শুরুতে ডিক্লেয়ার করা ভালো। তাছাড়াও জাভাস্ক্রিপ্ট যেহেতু একটি ইন্টারপ্রেটিং লেঙ্গুয়েজ তাই প্রোগ্রামিংএর জন্য এটি একটি সুন্দর চর্চ়াও।

জাভাস্ক্রিপ্ট While Loop

মোঃ আব্দুল্লাহ

 

যতক্ষণ পর্যন্ত একটি নির্দিষ্ট বিবৃতি সত্য ততক্ষণ পর্যন্ত লুপ একটি কোডের ব্লক পরিচালনা করতে পারে।

Syntax


while (condition বা চলক ) {
         আপনার কোড
 }

উদাহরণ
নিম্নের উদাহরণে যতক্ষণ পর্যন্ত চলকের মান (এই ক্ষেত্রে i এর মান) ১০ এর কম, কোডের লুপটি চলতে থাকবে ।


while (i < 10) {
    text += "The number is " + i;
    i++;
}

 

উল্লেখ্য যে, যদি কখনও ভুল করে চলকের মান বৃদ্ধি না করা হয় তবে লুপটি কখনই শেষ হবে না এবং প্রোগ্রামটি ক্রাশ করবে ।

 

The Do/While Loop

Do/While লুপ হল একটি চলক লুপ। এই লুপটি একবার বিবৃতিটির সত্যতা যাচাই করে ব্লকটি পরিচালনা করবে, এরপর লুপটি যতক্ষণ পর্যন্ত বিবৃতিটির সত্য ততক্ষণ পর্যন্ত লুপটি বারবার পরিচালনা করবে।
Syntax


do {
    code block to be executed
}
while (condition);

 

 

উদাহরণ
নিম্নের উদাহরণটি একটি ডু /হয়াইল লুপ। এই লুপটি সর্বদা একবার পরিচালিত হবে যদিও বিবৃতিটি ভুল হয়, কারন বিবৃতি যাচাই এর আগেই কোডের ব্লকটি পরিচালিত হয়।


do {
    text += "The number is " + i;
    i++;
}
while (i < 10);

 

উল্লেখ্য যে, চলকের মান বৃদ্ধির কথা ভুলে গেলে হবে না, নাহলে লুপটি কখনই শেষ হবে না।

 

For এবং While এর মধ্যে তুলনা

তুমি যদি লুপ সম্পর্কে আগের অধ্যায়টি পড়ে থাকো তবে তুমি জানতে পারবে যে হয়াইল লুপ ও ফর লুপ প্রাই একই, শুধু ১ ও ৩ নং বিবৃতি বাদে।

নিম্নের উদাহরণে ফর লুপ ব্যবহার করে cars নামক array থেকে গাড়ির নাম খুজে বের করা হয়েছে ।


var cars = ["BMW", "Volvo", "Saab", "Ford"];
var i = 0;
var text = "";

for (;cars[i];) {
    text += cars[i] + "<br>";
    i++;
}

 

নিম্নে হয়াইল লুপের একটি উদাহরণ যা cars নামক array থেকে গাড়ির নাম খুজে বের করার জন্য ব্যবহ্রত হয়েছে ।


var cars = ["BMW", "Volvo", "Saab", "Ford"];
var i = 0;
var text = "";

while (cars[i]) {
    text += cars[i] + "<br>";
    i++;
}

 

জাভাস্ক্রিপ্ট ডেট মেথড (JavaScript Date Methods)

ডেট মেথডের সাহায্যে ডেট ভেলু পাওয়া যায় এবং তা বেবহার করা যায়, যেমন বছর, মাস, দিন, মিনিট, সেকেন্ড, মিলিসেকেন্ড।

 

Date Get মেথড

একটি ডেটের কোন একটি অংশকে পাওয়ার জন্য ডেট গেট মেথড বেবহার করা হয়:

মেথড বর্ণনা
getDate() ডেট নাম্বার পাওয়ার জন্য যেমন: ১-৩১
getDay() সপ্তাহ নাম্বার পাওয়ার জন্য
getFullYear() বছরের সবগুলো ডিজিট পাওয়ার জন্য যেমন: ২০১৫
getHours() ঘন্টা জানার জন্য
getMilliseconds() মিলিসেকেন্ড হিসেবের জন্য
getMinutes() মিনিট হিসেবের জন্য
getMonth() মাস হিসেবের জন্য
getSeconds() সেকেন্ড হিসেবের জন্য
getTime() ১৯৭০ থেকে এই পর্যন্ত সময়কে মিলিসেকেন্ডে হিসেবের জন্য

 

getTime() মেথড

১৯৭০ থেকে এই পর্যন্ত সময়কে মিলিসেকেন্ডে হিসেবের জন্য এই মেথড বেবহৃত হয়।
উদাহরণ:


 <script>
var d = new Date();
document.getElementById("demo").innerHTML = d.getTime();
</script>

 

getFullYear() মেথড

বছরের সবগুলো ডিজিট পাওয়ার জন্য এই মেথড বেবহৃত হয়।
উদাহরণ:


 <script>
var d = new Date();
document.getElementById("demo").innerHTML = d.getFullYear();
</script>

 

getDay() মেথড

সপ্তাহ নাম্বার পাওয়ার জন্য এই মেথড বেবহৃত হয়।
উদাহরণ:


 <script>
var d = new Date();
document.getElementById("demo").innerHTML = d.getDay();
</script>


এরে বেবহার করেও এই মেথডে দেখানো যায়:


 <script>
var d = new Date();
var days = ["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];
document.getElementById("demo").innerHTML = days[d.getDay()];
</script>

 

Date Set মেথড

একটি ডেটের গেট মেথড বেবহার করে পাওয়া কোন একটি অংশকে সেট করার জন্য ডেট সেট মেথড বেবহার করা হয়:

মেথড বর্ণনা
setDate() ডেট নাম্বার সেট করার জন্য যেমন: ১-৩১
setFullYear() বছরের সবগুলো ডিজিট সেট করার জন্য যেমন: ২০১৫
setHours() ঘন্টা জানার জন্য
setMilliseconds() মিলিসেকেন্ড সেট করার জন্য
setMinutes() মিনিট সেট করার জন্য
setMonth() মাস সেট করার জন্য
setSeconds() সেকেন্ড সেট করার জন্য
setTime() ১৯৭০ থেকে এই পর্যন্ত সময়কে মিলিসেকেন্ডে সেট করার জন্য

 

setFullYear() মেথড

বছরের সব তথ্য সেট করার জন্য এই মেথড বেবহৃত হয়। উদাহরণ হিসেবে ১৪ই জানুয়ারী ২০২০ কে দেখানো হয়েছে।
উদাহরণ:


<script>
var d = new Date();
d.setFullYear(2020, 0, 14);
document.getElementById("demo").innerHTML = d;
</script>

 

setDate() মেথড

ডেট নাম্বার সেট করার জন্য এই মেথড বেবহৃত হয়।
উদাহরণ ১:


<script>
var d = new Date();
d.setDate(20);
document.getElementById("demo").innerHTML = d;
</script>


উদাহরণ ২:


<script>
var d = new Date();
d.setDate(d.getDate() + 50);
document.getElementById("demo").innerHTML = d;
</script>

 

ডেট ইনপুট-পার্সিং

ডেট ইনপুট এর মাধ্যমে কোনো ডেটের ভেলু নিয়ে তাকে Date.parse() মেথডের সাহায্যে মিলিসেকেন্ডে কনভার্ট করা যায়, Date.parse() মেথড কোনো একটি ভেলু/ডেট এবং ১৯৭০ থেকে সেই পর্যন্ত সময়কে মিলিসেকেন্ডে কনভার্ট করে।
উদাহরণ ১:


<script>
var msec = Date.parse("March 21, 2012");
document.getElementById("demo").innerHTML = msec;
</script>


উদাহরণ ২:


<script>
var msec = Date.parse("March 21, 2012");
var d = new Date(msec);
document.getElementById("demo").innerHTML = d;
</script>


 

ডেট কম্পেয়ার

দুইটি ডেটের মধ্যে খুব সহজেই কম্পেয়ার করা যায়।
উদাহরণ:


var today, someday, text;
today = new Date();
someday = new Date();
someday.setFullYear(2100, 0, 14);

if (someday > today) {
    text = "Today is before January 14, 2100.";
} else {
    text = "Today is after January 14, 2100.";
}
document.getElementById("demo").innerHTML = text;

 

হিন্টস: জাভাস্ক্রিপ্টে মাস গনণা শূন্য থেকে শুরু হয়, জানুয়ারী ০ ডিসেম্বর ১১

 

জাভাস্ক্রিপ্ট ম্যাথ অবজেক্ট (JavaScript Math Object)

জাভাস্ক্রিপ্ট ম্যাথ অবজেক্ট (JavaScript Math Object)

ম্যাথ অবজেক্টের সাহায্যে সংখা ও ম্যাথমেটিকাল টার্ম নিয়ে কাজ করা যায়।

 

ম্যাথ অবজেক্ট

ম্যাথ অবজেক্টের সাহায্যে ম্যাথমেটিকাল টার্ম নিয়ে কাজ করা যায়।

ম্যাথ অবজেক্টে অনেকগুলো ম্যাথমেটিকাল মেথড অন্তর্ভুক্ত রয়েছে।

ম্যাথ অবজেক্টের একটি সাধারণ কাজ হলো রেন্ডম নাম্বার তৈরি করা:


Math.random();        // returns a random number

 

 

Math.min() ও Math.max() মেথড

Math.min() ও Math.max() মেথড সর্বচ্চো ও সর্বনিম্ন নাম্বার বের করার জন্য বেবহৃত হয়:
উদাহরণ ১:


Math.min(0, 150, 30, 20, -8);        // returns -8

উদাহরণ ২:


Math.max(0, 150, 30, 20, -8);        // returns 150

 

 

Math.random() মেথড

Math.random() মেথড ০ এবং ১ এর মধ্যে যে কোনো একটি নাম্বার নেয়ার জন্য বেবহৃত হয়।
উদাহরণ:


Math.random();           // returns a random number

 

 

Math.round() মেথড

Math.round() মেথড এর সাহায্যে একটি সংখ্যার রাউন্ডঅফ ভেলু বের করা যায়।
উদাহরণ:


Math.round(4.7);       // returns 5
 Math.round(4.4);      // returns 4

 

 

Math.celi() মেথড

Math.celi() মেথড এর সাহায্যে একটি সংখ্যাকে নিকটস্ত সর্বচ্চো সংখ্যাতে রাউন্ড করা হয়।
উদাহরণ:


Math.ceil(4.4);       // returns 5

 

 

Math.floor() মেথড

Math.floor() মেথড এর সাহায্যে একটি সংখ্যাকে নিকটস্ত সর্বনিম্ন সংখ্যাতে রাউন্ড করা হয়।
উদাহরণ:


Math.floor(4.7);      // returns 4

Math.floor() এবং Math.random() মেথড একত্রে বেবহার করে ১ থেকে ১০ এর মধ্যে রেন্ডম নাম্বার তৈরী করা যায়।
উদাহরণ:


Math.floor(Math.random() * 11);       // returns a random number between 0 and 10

 

 

ম্যাথ কন্সটেন্টস

ম্যাথ অবজেক্ট হিসেবে বেবহার করার জন্য জাভাস্ক্রিপ্টে ৮টি ম্যাথমেটিকাল কন্সটেন্ট রয়েছে।

 Math.E;         // returns Euler's number
 Math.PI         // returns PI
 Math.SQRT2      // returns the square root of 2
 Math.SQRT1_2    // returns the square root of 1/2
 Math.LN2        // returns the natural logarithm of 2
 Math.LN10       // returns the natural logarithm of 10
 Math.LOG2E      // returns base 2 logarithm of E
 Math.LOG10E     // returns base 10 logarithm of E

 

ম্যাথ অবজেক্ট মেথডস

 

মেথড বর্ণনা
abs(x) x এর এবসুলেট ভেলু বের করে
acos(x) x এর arccosine রেডিয়ানে বের করে
asin(x) x এর arcsine রেডিয়ানে বের করে
atan(x) x এর arctangent রেডিয়ানে বের করে
atan2(y,x) x এর arctangent বের করে
ceil(x) x কে নিকটস্ত সর্বচ্চো সংখ্যাতে রাউন্ড করে
cos(x) x এর cosine রেডিয়ানে বের করে
exp(x) Ex এর মান বের করে>/td>
floor(x) x কে নিকটস্ত সর্বনিম্ন সংখ্যাতে রাউন্ড করে
log(x) x এর লগারিদম বের করে
max(x,y,z,...,n) সর্বচ্চো নাম্বার বের করে
min(x,y,z,...,n) সর্বনিম্ন নাম্বার বের করে
pow(x,y) x এর উপর y এর পাওয়ার বের করে
random() ০ এবং ১ এর মধ্যে যে কোনো একটি রেন্ডম নাম্বার নেয়ার জন্য বেবহৃত হয়
round(x) নিকটস্ত পূর্ণসংখাতে রাউন্ড অফ করে
sin(x) x এর sine রেডিয়ানে বের করে
sqrt(x) x এর স্কয়াররুট বের করে
tan(x) x এর tangent এর মান বের করে

জাভাস্ক্রিপ্ট স্কোপ (JavaScript Scope)

জাভাস্ক্রিপ্ট স্কোপ (JavaScript Scope)

স্কোপ হচ্ছে একসেস করা যায় এরকম ভেরিয়েবল।
জাভাস্ক্রিপ্টে অবজেক্ট এবং ফাংশনও ভেরিয়েবল হিসেবে বেবহৃত হয়, এখানে স্কোপ হচ্ছে ভেরিয়েবল, অবজেক্ট এবং ফাংশনের সেট যেখানে একসেস করা যায়।

লোকাল জাভাস্ক্রিপ্ট ভেরিয়েবল

জাভাস্ক্রিপ্টের ফাংশনের ভেতরে যেসব ভেরিযবল ডিক্লেয়ার করা হয় তা ঐ ফাংশনেগুলো লোকাল ভেরিযবল এবং এর স্কোপ লোকাল। এই ভেরিযবল শুধুমাত্র ঐ ফাংশনে ব্যবহার করা যাবে।
উদাহরণ:


// code here can not use carName
 
 function myFunction() {
     var carName = "Volvo";
 
     // code here can use carName
 
 }

যেহেতু লোকাল ভেরিয়েবল শুধুমাত্র নির্দিষ্ট ফাংশনে ব্যবহৃত হয় তাই একই নামের ভেরিয়েবল বিভিন্ন ফাংশনে ব্যবহার করা যাবে। একটি ফাংশন কল করা হলে লোকাল ভেরিয়েবল তৈরী হয় এবং ফাংশন শেষে ধ্বংশ হয়ে যায়।

গ্লোবাল জাভাস্ক্রিপ্ট ভেরিয়েবল

ফাংশনের বাহিরে যেসব ভেরিযবল ডিক্লেয়ার করা হয় সেগুলো গ্লোবাল ভেরিযবল। গ্লোবাল ভেরিযবলের স্কোপ গ্লোবাল থাকে, ওয়েবপেজের সকল স্ক্রিপ্ট এবং ফাংশন থেকে তা একসেস করা যায়।
উদাহরণ:


var carName = " Volvo";
 
 // code here can use carName
 
 function myFunction() {
 
     // code here can use carName 
 
 }

 

 

অটোমেটিক গ্লোবাল

আপনি যদি কোন ভেরিয়েবল এর মান নির্ধারণ করে দেন যা আগে ডিক্লেয়ার করা হয়নি এটি সয়ংক্রিয়ভাবে গ্লোবাল ভেরিয়েবল এ পরিণত হয়।

এই  উদাহরণ এ carName কে গ্লোবাল ভেরিয়েবল হিসেবে ডিক্লেয়ার করা হয়েছে।


// code here can use carName
 
 function myFunction() {
     carName = "Volvo";
 
     // code here can use carName
 
 }

 

 

জাভাস্ক্রিপ্ট ভেরিযবলের লাইফটাইম

কোন ভেরিযবল ডিক্লেয়ার করার সময় থেকেই জাভাস্ক্রিপ্ট ভেরিযবলের লাইফটাইম শুরু হয়।

কোন ফাংশন কমপ্লিট হওয়ার পর লোকাল ভেরিযবলের লাইফটাইম শেষ হয়ে যায়।

পেজ ক্লোজ করার পর গ্লোবাল ভেরিযবলের লাইফটাইম শেষ হয়ে যায়।

 

ফাংশনাল আর্গুমেন্ট

ফাংশনাল আর্গুমেন্ট ফাংশনের ভেতরে লোকাল ভেরিযবল হিসেবে কাজ করে।

 

HTML এ গ্লোবাল ভেরিযবল

HTML এ গ্লোবাল ভেরিযবল বলতে উইন্ডো অবজেক্টকে বোঝানো হয়, সকল গ্লোবাল ভেরিযবল উইন্ডো অবজেক্টের অন্তর্গত।
উদাহরণ:


// code here can use window.carName
 
 function myFunction() {
     carName = "Volvo";
 }

 

 

নোট: গ্লোবাল ভেরিয়েয়েবল বা ফাংশন, আপনার উইন্ডোজ ভেরিয়েবল বা ফাংশনকে অভাররাইট করতে পারে।

 

জাভাস্ক্রিপ্ট পরিচিতি (JavaScript Introduction)

জাভাস্ক্রিপ্ট পরিচিতি

পৃথিবীর জনপ্রিয় প্রোগ্রামিং লেঙ্গুয়েজ গুলোর মধ্যে জাভাস্ক্রিপ্ট অন্যতম। নিচে জাভাস্ক্রিপ্টের বৈশিষ্ঠ্যসহ কিছু উদাহরণ দেয়া হয়েছে।

জাভাস্ক্রিপ্ট HTML এর কন্টেন্টকে পরিবর্তন করতে পারে

একটি অন্যতম HTML মেথড হল document.getElementById()
এই উদাহরণের সাহায্যে HTML কন্টেন্ট থেকে আইডি (id="demo") এর সাহায্যে কোনো কন্টেন্ট খুঁজে বের করা যায় এবং তা পরিবর্তন করা যায় (innerHTML)।
উদাহরণ:


document.getElementById("demo").innerHTML = "Hello JavaScript";


 

জাভাস্ক্রিপ্ট HTML এর এট্রিবিউটকে পরিবর্তন করতে পারে

যেমন কোনো HTML <img> কন্টেন্টের সোর্স পরিবর্তন করে ইমেজ পরিবর্তন করা।

যেমন:


<h1>JavaScript Can Change Images</h1>

<img id="myImage" onclick="changeImage()" src="pic_bulboff.gif" width="100" height="180">

<p>Click the light bulb to turn on/off the light.</p>

<script>
function changeImage() {
    var image = document.getElementById('myImage');
    if (image.src.match("bulbon")) {
        image.src = "pic_bulboff.gif";
    } else {
        image.src = "pic_bulbon.gif";
    }
}
</script>

 

ফলাফলঃ


JavaScript Can Change Images

pic_bulboff

Click the light bulb to turn on/off the light.


 

জাভাস্ক্রিপ্ট HTML এর স্টাইলকে(CSS) পরিবর্তন করতে পারে

HTML এর স্টাইলকে পরিবর্তন করা অনেকটা HTML এর এট্রিবিউটকে পরিবর্তন করার মতোই।
উদাহরণ:


document.getElementById("demo").style.fontSize = "25px";


 

জাভাস্ক্রিপ্ট ডাটার ভেলিডিটি চেক করতে পারে

ডাটা টাইপ এবং অন্যান্য ডাটা ভেলিডেশনের ক্ষেত্রে জাভাস্ক্রিপ্ট বেবহার করা হয়।

জাভাস্ক্রিপ্ট সম্পর্কে আরো তথ্য

জাভাস্ক্রিপ্ট এবং জাভা কনসেপ্ট ও ডিজাইন সকল দিক থেকে সম্পূর্ণ আলাদা দুইটি লেঙ্গুয়েজ
১৯৯৫ সালে ব্রেন্দেন ইক নামক একজন বেক্তি এই লেঙ্গুয়েজ আবিষ্কার করেন এবং ১৯৯৭ সালে এটি ECMA স্ট্যান্ডার্ড লাভ করে
এর অফিসিয়াল নেম হচ্ছে ECMA-262 এবং ECMAScript 5 (JavaScript 1.8.5 - July 2010) হচ্ছে লেটেস্ট স্ট্যান্ডার্ড

জাভাস্ক্রিপ্ট অপারেটরস (JavaScript Operators)

জাভাস্ক্রিপ্ট অপারেটরস (JavaScript Operators)

উদাহরণ
দুটি ভ্যালুকে variable হিসেবে ঘোষণা করে তাদের যোগ করা হয়েছে
var x = 5; // এইখানে ৫ কে x ঘোষণা করা হয়েছে
var y = 2; // এইখানে ২ কে y ঘোষণা করা হয়েছে
var z = x + y; // ফলাফল ৭ কে z = x + y এর মাধ্যমে ঘোষণা করা হয়েছে

 

JavaScript Arithmetic Operators

+ যোগ
- বিয়োগ
* গুন
/ ভাগ
% Modulus
++ Increment (বাড়া)
-- Decrement (কমা)

Addition অপারেটর(+) ভ্যালু যোগ করে
যোগ

var x = 5;
var y = 2;
var z = x + y;

subtract অপারেটর (-) বিয়োগ করে

subtracting

var x = 5;
var y = 2;
var z = x - y;

multiplication অপারেটর (*) ভ্যালু গুন করে

Multiplying

var x = 5;
var y = 2;
var z = x * y;

division অপারেটর (/) ভ্যালু ভাগ করে

dividing

var x = 5;
var y = 2;
var z = x / y;

modulus অপারেটর (%) ভাগের পর ভাগশেষ ডিসপ্লে করে

Modulus

var x = 5;
var y = 2;
var z = x % y;

increment (++) অপারেটর ভ্যালু বাড়ায়

Incrementing

var x = 5;
x++;
var z = x;

Decrement (--) অপারেটর ভ্যালু কমায়

decrementing

var x = 5;
x--;
var z = x;

 

javascript Assignment অপারেটর

অপারেটর এর উদাহরণ একইরকম

= x = y x = y
+= x += y x = x + y
-= x -= y x = x - y
*= x *= y x = x * y
/= x /= y x = x / y
%= x %= y x = x % y

(=) assignment অপারেটর একটি ভ্যালুকে variable এ ঘোষণা করে

var x = 10;

(+=)assignment অপারেটর variable এর ভ্যালুকে যোগ করে

var x = 10;
x += 5;

(-=)assignment অপারেটর variable এর ভ্যালুকে বিয়োগ করে

var x = 10;
x -= 5;

(*=)assignment অপারেটর variable কে গুন করে

var x = 10;
x *= 5;

(/=)assignment অপারেটর variable কে ভাগ করে

var x = 10;
x /= 5;

(%=)assignment অপারেটর ভাগ করার পর ভাগশেষ বের করে

var x = 10;
x %= 5;

javascript strings অপারেটর

স্ট্রিং কে যোগ করতে + অপারেটর ব্যবহার করা হয়। এটিকে concatenation অপারেটর বলা হয়
উদাহরণ
একসাথে অনেকগুলো স্ট্রিং যোগ করার ক্ষেত্রে এই অপারেটর ব্যবহার করা হয়

txt1 = "What a very";
txt2 = "nice day";
txt3 = txt1 + txt2;

ফলাফল

What a verynice day

স্পেস যোগ করার জন্য প্রথম স্ট্রিং এ ফাকা বা স্পেস দিতে হবে
উদাহরণ

txt1 = "What a very ";
txt2 = "nice day";
txt3 = txt1 + txt2;

ফলাফল

What a very nice day

অথবা একটি স্পেস expression হিসেবে দিতে হবে
উদাহরণ

txt1 = "What a very";
txt2 = "nice day";
txt3 = txt1 + " " + txt2;

ফলাফল

What a very nice day

+= অপারেটর দিয়েও concatenation স্ট্রিং এর কাজ করা যায়
উদাহরণ

txt1 = "What a very ";
txt1 += "nice day";

ফলাফল

What a very nice day

 

স্ট্রিং এবং নাম্বার যোগ করা

দুইটি নাম্বার যোগ করলে যোগফল পাওয়া যাবে কিন্তু নাম্বার এবং স্ট্রিং যোগ করলে একটি স্ট্রিং পাওয়া যাবে
উদাহরণ

x = 5 + 5;
y = "5" + 5;
z= "Hello" + 5;

x,y,z এর ফলাফল হবে

10
55
Hello5

জাভাস্ক্রিপ্ট কমেন্ট (JavaScript Comments)

জাভাস্ক্রিপ্ট মন্তব্য (কমেন্ট) (JavaScript Comments)

জাভাস্ক্রিপ্ট comments জাভাস্ক্রিপ্ট কোড ব্যাখ্যা করতে, এবং এটি আরো পাঠযোগ্য করতে ব্যবহার করা হয়।
জাভাস্ক্রিপ্ট comment , execution দূর করে যখন বিকল্প কোড পরীক্ষা করা হয় ।

Single Line Comments

Single line comments // দিয়ে শুরু হয় ।

কোনো টেক্সট // এবং একটি লাইন শেষ হয়ে যাবে তার মধ্যে জাভাস্ক্রিপ্ট দ্বারা উপেক্ষা করা হবে
(will not be executed)

কোড ব্যাখ্যা করতে এই উদাহরনে প্রত্যেক লাইনের এর পূর্বে single line comment ব্যবহার করা হয়

উদাহরনঃ


// Change heading:
document.getElementById("myH").innerHTML = "My First Page";
// Change paragraph:
document.getElementById("myP").innerHTML = "My first paragraph.";


 

 

কোড ব্যাখ্যা করতে এই উদাহরনে প্রত্যেক লাইনের এর শেষে single line comment ব্যবহার করা হয়

উদাহরনঃ


var x = 5;        // Declare x, give it the value of 5
var y = x + 2;    // Declare y, give it the value of x + 2

এখানে x , ৫ এর মান নির্দেশ করে

এবং Y , x + 2 এর মান নির্দেশ করে

 

Multi-line Comments

Multi-line comments /* দিয়ে শুরু হয় এবং */ দিয়ে শেষ হয় ।

কোনো টেক্সট এর মধ্যে / * এবং * / জাভাস্ক্রিপ্ট দ্বারা উপেক্ষা করা হবে ।

কোড ব্যাখ্যা করতে , এই উদাহরনে a multi-line comment ব্যবহার করা হয়েছে

উদাহরনঃ


/*
The code below will change
the heading with id = "myH"
and the paragraph with id = "myP"
in my web page:
*/
document.getElementById("myH").innerHTML = "My First Page";
document.getElementById("myP").innerHTML = "My first paragraph.";


 

 

কোড কার্যকর করা প্রতিরোধ করতে মন্তব্য (কমেন্ট) এর ব্যবহার

কোড কার্যকর করা প্রতিরোধ করতে মন্তব্য (কমেন্ট) ব্যবহার করা যায়, এটি কোড পরীক্ষার সময় ব্যবহার করা যেতে পারে।

একটি কোড লাইন সামনে // যোগ করলে, কোড লাইন এক্সিকিউটেবল লাইন থেকে  comment এ পরিবর্তন হয়ে যায়।

এই উদাহরষণ কোড এর একটি লাইন কার্যকর হওয়া প্রতিরোধ করার জন্য  // ব্যবহার করা হয়েছে।

উদাহরনঃ


//document.getElementById("myH").innerHTML = "My First Page";
document.getElementById("myP").innerHTML = "My first paragraph.";


 

 

এই উদাহরণ Comment Block এর মাধ্যমে একাধিক লাইন কার্যকারিতা প্রতিরোধ করে।

উদাহরনঃ


/*
document.getElementById("myH").innerHTML = "My First Page";
document.getElementById("myP").innerHTML = "My first paragraph.";
*/


 

 

ধন্যবাদ, আশা করি বিষয়টি সকলেই বুঝতে পেরেছেন 🙂

জাভাস্ক্রিপ্ট কোথায় কিভাবে লিখবেন (JavaScript Where To)

জাভাস্ক্রিপ্ট কোথায় কিভাবে লিখবেন (JavaScript Where To)

এইচটিএমএল পেজ এর মধ্যে javascript কে হেড এবং বডি সেকশন এ রাখতে হয়।

<script> ট্যাগ

এইচটিএমএল এ javascript কোড অবশ্যই <script> এবং </script> ট্যাগ এর মধ্যে লিখতে হয়।

উদাহরণ


<script>
document.getElementById("demo").innerHTML = "My First JavaScript";
</script>


পুরাতন উদাহরণ গুলোতে টাইপ attribute পাওয়া যেতে পারে:  <script type="text/javascript">
কিন্তু নতুনগুলোতে এইচটিএমএল এর মধ্যে javascript ডিফল্ট language হিসেবে থাকে।

Javascript ফাংশন এবং ইভেন্ট

Javascript ফাংশন হল একটি javascript এর ব্লক কোড। যখন তাকে চাওয়া হবে তখন সে কাজ করবে উদাহরণস্বরূপ যখন একটি ইভেন্ট এর সময় আসবে তখন সে কাজ করবে যেমন কোন ইউজার কোন নির্দিষ্ট বাটন ক্লিক করার পর কাজ হবে।

Jvascript <heat> বা <body> এর মধ্যে থাকবে

html ডকুমেন্ট এ যেকোন সংখ্যক বার script রাখা যাবে। script <body> বা <hect> বা উভয় স্থানেই রাখতে পারেন।

তবে সবথেকে ভাল হল সকল কোড এক জায়গায় রাখা

Javascript <heat> সেকশন এ রাখা

এই উদাহরণ এ javascript কে head সেকশন এ রাখা হয়েছে। এটি একটি বাটন এ ক্লিক করার পর কাজ করবে।
উদাহরণ


<!DOCTYPE html>
<html>
<head>
 <script>
 function myFunction() {
     document.getElementById("demo").innerHTML = "Paragraph changed.";
 }
 </script>
 </head>
<body>
<h1>My Web Page</h1>
<p id="demo">A Paragraph</p>
<button type="button" onclick="myFunction()">Try it</button>
</body>
 </html>

ফলাফল


JavaScript in Body

A Paragraph.


 

Javascript <body> সেকশন এ রাখা

এই উদাহরণ এ javascript কে body সেকশন এ রাখা হয়েছে। একটি বাটন এ ক্লিক করার পর কাজ হবে
উদাহরণ


 

<!DOCTYPE html>
 <html>
 <body> 

<h1>My Web Page</h1>
 
<p id="demo">A Paragraph</p>
 
<button type="button" onclick="myFunction()">Try it</button>
 
<script>
 function myFunction() {
    document.getElementById("demo").innerHTML = "Paragraph changed.";
 }
 </script>
 
</body>
 </html>

 

ফলাফল


My Web Page

A Paragraph


সবথেকে ভাল উপায় হল body এলিমেন্ট এর নিচের দিকে javascript কোড কে রাখা। এতে পেজ ভালভাবে লোড হবে, কেননা ‍HTML লোড হওয়া script ত্রুটির কারণে বন্ধ হবে না।

External javascript

External ফাইল এর মধ্যে script কে রাখতে হয়। এই ফাইল এর এক্সটেনশন হল .js. external script ব্যবহার করতে চাইলে এই script ফাইল এর নাম
tag এর মধ্যে source attribute (src) দিয়ে লিখতে হয়।
উদাহরণ


 

<!DOCTYPE html>
<html>
 <body>
 <script src="myScript.js"></script>
 </body>
 </html>

External script আপনি বডি বা হেড যেকোনো জায়গায় রাখতে পারেন। যদি সঠিক পাথ অনুযায়ী এই ফাইল থাকে তাহলেই এটি কাজ করবে। এক্সটারনাল script এর মধ্যে কোন
ট্যাগ থাকে না।

এক্সটারনাল javascript এর সুবিধা

ইহা এইচটিএমএল এবং কোড কে আলাদা রাখে, এইচটিএমএল এবং javascript কে পরতে এবং রক্ষণাবেক্ষণ করতে আরও সহজ হয়। Cached javascript ফাইল পেজ কে দ্রুত লোড করতে সাহায্য করে।

 

জাভাস্ক্রিপ্ট স্ট্রিং মেথড (JavaScript String Methods)

জাভাস্ক্রিপ্ট স্ট্রিং মেথড (JavaScript String Methods)

নয়ন চন্দ্র দত্ত

 

স্ট্রিং পদ্ধতি আপনাকে স্ট্রিং নিয়ে কাজ করতে সাহায্য করবে।

 

কোন স্ট্রিং এর মধ্যে একটি স্ট্রিং খুঁজে বের করা

indexOf() পদ্ধতি একটি স্ট্রিং এর মধ্যে নির্দিষ্ট লেখার প্রথম ঘটনার ইন্ডেক্স প্রদান করে।

উদাহরণ


var str = "Please locate where 'locate' occurs!";
var pos = str.indexOf("locate");


 

 

lastIndexOf() পদ্ধতি একটি স্ট্রিং এর মধ্যে নির্দিষ্ট লেখার শেষ ঘটনার ইন্ডেক্স প্রদান করে।

উদাহরণ


var str = "Please locate where 'locate' occurs!";
var pos = str.lastIndexOf("locate");


 

যদি টেক্সট পাওয়া না তাহলে indexOf() এবং lastIndexOf() উভয় পদ্ধতি -1 প্রদান করে।
[ জাভাস্ক্রিপ্ট শূন্য থেকে অবস্থান গণনা করে। একটি স্ট্রিং মধ্যে 0 প্রথম, 1 দ্বিতীয়, 2 তৃতীয় স্থানে। ]
উভয় পদ্ধতিতে অনুসন্ধানের জন্য শুরুর অবস্থান হিসাবে দ্বিতীয় প্যারামিটার গ্রহণ করে।

 

একটি স্ট্রিং এর মধ্যে স্ট্রিং অনুসন্ধান

search() পদ্ধতি একটি নির্দিষ্ট মানের জন্য একটি স্ট্রিং অনুসন্ধান করে এবং ম্যাচ হওয়া অবস্থান প্রদান করে।

উদাহরণ


var str = "Please locate where 'locate' occurs!";
var pos = str.search("locate");


 

**আপনি কি লক্ষ্য করেছেন?
indexOf() এবং search() দুটি পদ্ধতিই সমান।
তারা একই আর্গুমেন্ট (প্যারামিটার) গ্রহণ করে এবং তারা একই মান প্রদান করে।
দুটি পদ্ধতিই সমান কিন্তু search() পদ্ধতি আরো অনেক শক্তিশালী সার্চ মান গ্রহণ করতে পারে।
আপনারা রেগুলার এক্সপ্রেশন সম্পর্কিত অধ্যায়ে শক্তিশালী সার্চ মান সম্পর্কে আরো জানতে পারবেন।

 

স্ট্রিং যন্ত্রাংশ এক্সট্রাক্টিং

একটি স্ট্রিং এর একটি অংশ এক্সট্রাক্টিংয়ের জন্য 3টি পদ্ধতি আছে:

  • slice(start, end)
  • substring(start, end)
  • substr(start, length)

 

slice() পদ্ধতি

একটি স্ট্রিং এর একটি অংশ এক্সট্রাক্ট করে এবং একটি নতুন স্ট্রিং এক্সট্রাক্টিং অংশ প্রদান করে।
পদ্ধতিতে 2টি প্যারামিটার লাগে। যথাঃ শুরুর ইনডেক্স (অবস্থান), এবং শেষ ইনডেক্স (অবস্থান)।
এই উদাহরণ একটি স্ট্রিংকে 7 থেকে 13 অবস্তানে slices out করেঃ

উদাহরণ


var str = "Apple, Banana, Kiwi";
var res = str.slice(7,13);


 

মধ্যের ফলাফল হবেঃ
Banana

যদি কোন প্যারামিটার নেগেটিভ হয় তাহলে এর অবস্থান স্ট্রিং এর শেষ থেকে গণনা করা হবে।
এই উদাহরণ একটি স্ট্রিংকে -12 থেকে -6 অবস্তানে slices out করেঃ

উদাহরণ


var str = "Apple, Banana, Kiwi";
var res = str.slice(-12,-6);


 

মধ্যের ফলাফল হবেঃ
Banana

যদি আপনি দ্বিতীয় প্যারামিটারটি বর্জন করেন তবে পদ্ধতিটিতে বাকি স্ট্রিং সেভাবেই হবে। যেমনঃ-
var res = str.slice(7);

বা, শেষ থেকে গনণা করলে, যেমনঃ-
var res = str.slice(-12);

[ নেতিবাচক অবস্থানের ইন্টারনেট এক্সপ্লোরার ৮ এবং তার আগের ভারসনে কাজ করবে না। ]

 

substring() পদ্ধতি

substring(), slice() এর মত। ভিন্নতা এই যে substring() কখনও নেগেটিভ ইনডেক্স করতে পারে না।

উদাহরণ


var str = "Apple, Banana, Kiwi";
var res = str.substring(7,13);


 

মধ্যের ফলাফল হবেঃ
Banana

যদি আপনি দ্বিতীয় প্যারামিটারটি বর্জন করেন তবে substring() বাকি স্ট্রিংকে সেভাবেই slice out করবে।

 

substr() পদ্ধতি

substr() , slice() এর মত। ভিন্নতা এই যে substr() এক্সট্রাক্ট অংশের দৈর্ঘ্য নির্দিষ্ট করে।

উদাহরণ


var str = "Apple, Banana, Kiwi";
var res = str.substr(7,6);


 

মধ্যের ফলাফল হবেঃ
Banana

যদি প্রথম প্যারামিটার নেগেটিভ হয়, তাহলে অবস্থান স্ট্রিং এর শেষ থেকে গণনা করা হবে।
দ্বিতীয় প্যারামিটার নেগেটিভ হতে পারে না কারণ এটি দৈর্ঘ্য সংজ্ঞায়িত করে।
যদি দ্বিতীয় প্যারামিটারটি বর্জন করেন তবে substr() বাকি স্ট্রিংকে সেভাবেই slice out করবে।

 

স্ট্রিং বিষয়বস্তু প্রতিস্থাপন

replace() পদ্ধতি একটি স্ট্রিং এর মধ্যে অন্য মানের সঙ্গে একটি নির্দিষ্ট মানকে প্রতিস্থাপন করে।

উদাহরণ


str = "Please visit Microsoft!";
var n = str.replace("Microsoft","W3Schools");


 

replace() মেথড সার্চ মান হিসাবে একটি রেগুলার এক্সপ্রেশনও গ্রহণ করতে পারে।

 

উচ্চ এবং নিম্ন কেসে রূপান্তর

একটি স্ট্রিং toUpperCase() এর সঙ্গে উচ্চ কেসে রূপান্তর হয়।

উদাহরণ


var text1 = "Hello World!";         // String
 var text2 = text1.toUpperCase();   // text2 is text1 converted to upper

 

একটি স্ট্রিং toUpperCase() এর সঙ্গে নিম্ন কেসে রূপান্তর হয়।

উদাহরণ


var text1 = "Hello World!";         // String
 var text2 = text1.toLowerCase();   // text2 is text1 converted to lower

 

 

concat() পদ্ধতি

concat() দুটি অথবা আরো স্ট্রিং যোগ করে।

উদাহরণ


var text1 = "Hello";
var text2 = "World";
text3 = text1.concat(" ",text2);


 

Concat () মেথড প্লাস অপারেটরের পরিবর্তে ব্যবহার করা যেতে পারে। এই দুই লাইন একই কাজ করেঃ


var text = "Hello" + " " + "World!";
var text = "Hello".concat(" ","World!");


 

 

স্ট্রিং অক্ষর নিষ্কাশন

স্ট্রিং অক্ষর আহরণের জন্য 2টি নিরাপদ পদ্ধতি নিম্নরূপঃ

  1. charAt(position)
  2. charCodeAt(position)

 

charAt() পদ্ধতি

CharAt () মেথড একটি স্ট্রিং মধ্যে একটি নির্দিষ্ট ইনডেক্সে (অবস্থান) ইনডেক্স চরিত্র প্রদান করে।

উদাহরণ


var str = "HELLO WORLD";
 str.charAt(0);          // returns H

 

 

charCodeAt() পদ্ধতি

CharCodeAt () মেথড একটি স্ট্রিং মধ্যে একটি নির্দিষ্ট ইনডেক্সে ইউনিকোড চরিত্র প্রদান করে।

উদাহরণ


var str = "HELLO WORLD";
str.charCodeAt(0);        // returns 72

 

 

অনিরাপদ অ্যারে হিসাবে স্ট্রিং ব্যবহার

অ্যারে হিসাবে একটি স্ট্রিং অ্যাক্সেস করতে এইরকম কোড দেখতে পাবেনঃ


var str = "HELLO WORLD";
str[0];           // returns H

 

 

একটি স্ট্রিংকে অ্যারেতে রূপান্তর

একটি স্ট্রিং split() মেথডের সাহায্যে অ্যারেতে রূপান্তরিত হতে পারে।

উদাহরণ


var txt = "a,b,c,d,e";   // String
 txt.split(",");         // Split on commas
 txt.split(" ");         // Split on spaces
 txt.split("|");         // Split on pipe

 

যদি বিভাজককে বাদ দেওয়া হয়, তাহলে ফিরতি অ্যারেতে ইনডেক্স [0] এর মধ্যে পুরো স্ট্রিং থাকবে। যদি বিভাজক "" হয়, তবে ফিরতি অ্যারৎ একক অক্ষরের একটি অ্যারে হবে। যেমনঃ

উদাহরণ


var txt = "Hello"; // String
 txt.split("");    // Split in characters

 

নিজে নিজে অনুশীলন কর!

অনুশীলন 01:

ইঙ্গিত: টেক্সট ভেরিয়েবল এর মধ্যে "World" এর প্রথম অবস্থান প্রদর্শন করে।


<!DOCTYPE html>
<html>
<body>
<p id="demo"></p>
<script>
var txt = "Hello World";
document.getElementById("demo").innerHTML = txt;
</script>
</body>
</html>

 

 

 

অনুশীলন 02:

ইঙ্গিত: "World" কে "Universe" দ্বারা পরিবর্তন করার জন্য replace() মেথড ব্যবহার করুন।


<!DOCTYPE html>
<html>
<body>
<p id="demo"></p>
<script>
var txt = "Hello World";
document.getElementById("demo").innerHTML = txt;
</script>
</body>
</html>

 

 

অনুশীলন 03:

ইঙ্গিত: শুধুমাত্র "Banana,Kiwi" প্রদর্শনের জন্য slice() মেথড ব্যবহার করুন।


 

<!DOCTYPE html>
<html>
<body>
<p id="demo"></p>
<script>
var str = "Apple,Banana,Kiwi";
document.getElementById("demo").innerHTML = str;
</script>
</body>
</html>

 

 

জাভাস্ক্রিপ্ট নাম্বার (JavaScript Numbers)

জাভাস্ক্রিপ্ট নাম্বার (JavaScript Numbers)

নয়ন চন্দ্র দত্ত

 

জাভাস্ক্রিপ্ট এর শুধুমাত্র এক ধরনের নাম্বার আছে। নাম্বার দশমিক দিয়ে বা না দিয়েও লেখা যায়।

জাভাস্ক্রিপ্ট নাম্বার

নাম্বার দশমিক দিয়ে বা না দিয়েও লেখা যায়ঃ

উদাহরণ


var x = 34.00;         // A number with decimals
var y = 34;             // A number without decimals


 

 

অতিরিক্ত বড় বা অতিরিক্ত ছোট সংখ্যা বৈজ্ঞানিক (সূচক) স্বরলিপি দিয়ে লেখা যেতে পারে।

উদাহরণ


var x = 123e5;    // 12300000
 var y = 123e-5;  // 0.00123

 

 

জাভাস্ক্রিপ্ট নাম্বার সর্বদা 64 বিট ফ্লোটিং পয়েন্ট হয়

অন্যান্য অনেক প্রোগ্রামিং ভাষা থেকে ভিন্ন, জাভাস্ক্রিপ্ট বিভিন্ন ধরনের নাম্বার সংজ্ঞায়িত করেনা; যেমন- ইন্টিজার, ছোট, লম্বা, ফ্লোটিং-পয়েন্ট ইত্যাদি।
জাভাস্ক্রিপ্ট নাম্বার সবসময় আন্তর্জাতিক আইইইই 754 মান অনুসরণ করে, ডবল স্পষ্টতার ফ্লোটিং পয়েন্ট নাম্বার হিসেবে সংরক্ষণ করা হয়।
এই ফরম্যাট 64 বিট নাম্বার বিন্যাস করে যেখানে নাম্বার (ভগ্নাংশ) 0 থেকে 51 বি্টের মধ্যে সংরক্ষিত হয়। বিটের সূচক 52 থেকে 62 এবং বিটের সাইন ইন 63 হয়।

 

মান (ওরফে ভগ্নাংশ / অংশক) 52 bits (0 - 51)
সূচক 11 bits (52 - 62)
সাইন 1 bit (63)

 

যথার্থতা

ইন্টিজার (নির্দিষ্ট সময়ের বা সূচক স্বরলিপি ছাড়া নাম্বার) 15 সংখ্যার পর্যন্ত সঠিক বলে মনে করা হয়।

উদাহরণ


var x = 999999999999999;      // x will be 999999999999999
 var y = 9999999999999999;    // y will be 10000000000000000

 

 

দশমিক সর্বোচ্চ সংখ্যা 17 কিন্তু পাটীগণিতীয় ফ্লোটিং পয়েন্ট সবসময় 100% সঠিক হয়না।

উদাহরণ


var x = 0.2 + 0.1;            // x will be 0.30000000000000004

 

 

উপরে সমস্যা সমাধান করার জন্য, এটি সংখ্যাবৃদ্ধি এবং ডিভাইড করতে সাহায্য করেঃ

উদাহরণ


var x = (0.2 * 10 + 0.1 * 10) / 10;           // x will be 0.3

 

 

হেক্সাডেসিমেল

যদি তারা 0x দ্বারা পূর্বে হয় তাহলে জাভাস্ক্রিপ্ট হেক্সাডেসিমাল হিসাবে সাংখ্যিক ধ্রুবক ব্যাখ্যা করে।

উদাহরণ


var x = 0xFF;        // x will be 255

 

[ লিডিং শূন্য (যেমন 07) দিয়ে সংখ্যা লিখবেন না। ]

ডিফল্টরূপে, জাভাস্ক্রিপ্ট বেস 10 দশমিক সংখ্যা হিসাবে প্রদর্শন করে। কিন্তু বেস 16 (হেক্স), বেস 8 (অকট্যাল), বা বেস 2 (বাইনারি) হিসাবে আউটপুট toString() ব্যবহার করতে পারেন।

উদাহরণ


var myNumber = 128;
 myNumber.toString(16);     // returns 80
 myNumber.toString(8);      // returns 200
 myNumber.toString(2);      // returns 10000000

 

 

অসীম

উদাহরণ


var myNumber = 2;
 while (myNumber != Infinity) {          // Execute until Infinity
 myNumber = myNumber * myNumber;
 }

 

 

0 (শূন্য) দ্বারা ভাগ করেও অসীম তৈরি করা যায়।

উদাহরণ


var x = 2 / 0;         // x will be Infinity
 var y = -2 / 0;       // y will be -Infinity

 

 

অসীম একটি সংখ্যা। অসীম typeOf নাম্বার প্রদান করে।

উদাহরণ


typeof Infinity;       // returns "number"

 

 

NaN - কোন সংখ্যা নয়

NaN একটি জাভাস্ক্রিপ্ট সংরক্ষিত শব্দ একটি মান যা নির্দেশ করে যা কোন সংখ্যা নয়। একটি অ-সাংখ্যিক স্ট্রিং সঙ্গে গাণিতিক কাজ করার চেষ্টা করেলে রেজাল্ট NaN(কোন সংখ্যা নয়) হবে।

উদাহরণ


var x = 100 / "Apple";        // x will be NaN (Not a Number)

 

 

যাইহোক, স্ট্রিং এর একটি সাংখ্যিক মান রয়েছে। রেজান্ট একটি সংখ্যা হবেঃ

উদাহরণ


var x = 100 / "10";       // x will be 10

 

 

মান একটি সংখ্যা হয় তাহলে আপনি গ্লোবাল জাভাস্ক্রিপ্ট ফাংশন isNaN() ব্যবহার করে তা খুঁজে বের করতে পারেন।

উদাহরণ


var x = 100 / "Apple";
 isNaN(x);                // returns true because x is Not a Number

 

 

NaN দেখুন। আপনি যদি গাণিতিক অপারেশন এর মধ্যে NaN ব্যবহার করেন তাহলে রেজাল্ট নিম্নরূপ হবেঃ

উদাহরণ


 var x = NaN;
 var y = 5;
 var z = x + y;     // z will be NaN

 

 

NaN একটি নাম্বার। typeOf NaN নাম্বার প্রদান করে।

উদাহরণ


typeof NaN;         // returns "number"

 

 

নাম্বার অবজেক্টও হতে পারে

সাধারণত জাভাস্ক্রিপ্ট সংখ্যা লিটারেল থেকে তৈরি আদিম মানঃ var x = 123
কিন্তু নাম্বারকে নতুন শব্দ দ্বারা অবজেক্ট হিসাবেও সংজ্ঞায়িত করো যেতে পারেঃ var y = new Number(123)

উদাহরণ


var x = 123;
 var y = new Number(123);
          // typeof x returns number
          // typeof y returns object

 

 

কখনও নাম্বার অবজেক্ট তৈরি করবেন না। তারা সঞ্চালনের গতি মন্থর এবং কদর্য পার্শ্ব প্রতিক্রিয়া সৃষ্টি করে।
যখন সমতা == অপারেটর ব্যবহার করেন তখন সমান সংখ্যা সমান দেখায়:

উদাহরণ


var x = 500;
 var y = new Number(500);
// (x == y) is true because x and y have equal values

 

 

যখন সমতা === অপারেটর ব্যবহার করেন তখন সমান সংখ্যা সমান হয়না কারণ === অপারেটর টাইপ এবং মান উভয় সমতা বিবেচনা করে।

উদাহরণ


var x = 500;
 var y = new Number(500);
// (x === y) is false because x and y have different types

 

 

অথবা এমনকি খারাপ. অবজেক্টস তুলনা করা যাবে নাঃ

উদাহরণ


var x = new Number(500);
 var y = new Number(500);
// (x == y) is false because objects cannot be compared

 

জাভাস্ক্রিপ্ট অবজেক্টস তুলনা করা যায় না।

 

নাম্বার প্রোপার্টি এবং মেথড

আদিম মানের (3.14 বা 2014 এর মত) বৈশিষ্ট্য ও পদ্ধতি থাকতে পারে না(কারণ তারা অবজেক্ট না) ।

নাম্বার প্রোপার্টি

প্রোপার্টি ব্যাখ্যা
MAX_VALUE জাভাস্ক্রিপ্ট এ সম্ভব এমন বৃহত্তম সংখ্যা প্রদান করে।
MIN_VALUE জাভাস্ক্রিপ্ট এ সম্ভব এমন ক্ষুদ্রতম সংখ্যা প্রদান করে।
NEGATIVE_INFINITY অসীমে নেগেটিভ প্রতিনিধিত্ব করে।
NaN একটি "সংখ্যা নয়" মান প্রতিনিধিত্ব করে।
POSITIVE_INFINITY অসীম প্রতিনিধিত্ব করে।

 

উদাহরণ


var x = Number.MAX_VALUE;


 

এই প্রোপার্টিস শুধুমাত্র Number.MAX_VALUE হিসেবও ওয়াক্সেস করা যেতে পারে।

myNumber.MAX_VALUE, ব্যবহার করে, যেখানে MyNumber একটি পরিবর্তনশীল, অভিব্যক্তি, অথবা মান তা অনির্ধারিত হিসেবে ফিরে আসে।

উদাহরণ


var x = 6;
var y = x.MAX_VALUE; // y becomes undefined