JavaScript বুঝানো

JavaScript 布尔(逻辑)代表两个值之一:truefalse

布尔值

通常,在编程中,您会需要只能有两个值之一的数据类型,比如

  • YES / NO
  • ON / OFF
  • TRUE / FALSE

鉴于此,JavaScript 提供一种布尔数据类型。它只接受值 truefalse

Boolean() 函数

您可以使用 Boolean() 函数来确定表达式(或变量)是否为真:

ইনস্ট্যান্স

Boolean(10 > 9)        // 返回 true

আপনার হাতে প্রয়াস করুন

或者甚至更简单:

ইনস্ট্যান্স

(10 > 9)              // 也返回 true
10 > 9                // 也返回 true

আপনার হাতে প্রয়াস করুন

比较和条件

JS 比较这一章列出了完整的比较运算符。

JS 条件这一章列出了完整的条件语句。

下面是一些例子:

运算符 描述 ইনস্ট্যান্স
== 等于 if (day == "Monday")
> 大于 if (salary > 9000)
< 小于 if (age < 18)

表达式的布尔值是 JavaScript 比较和条件的基础。

所有具有“真实”值的即为 True

ইনস্ট্যান্স

100
3.14
-15
"Hello"
"false"
7 + 1 + 3.14
5 < 6 

আপনার হাতে প্রয়াস করুন

所有不具有“真实”值的即为 False

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

আপনার হাতে প্রয়াস করুন

布尔可以是对象

通常 JavaScript 布尔是由字面量创建的原始值:

var x = false

但是布尔也可以通过关键词 new 作为对象来定义:

var y = new Boolean(false)

ইনস্ট্যান্স

var x = false;
var y = new Boolean(false);
// typeof x 返回 boolean
// typeof y 返回 object

আপনার হাতে প্রয়াস করুন

বুল অবজেক্ট তৈরি করবেন না।তা কার্যকারিতা হারাবে।

new কোনো কীওয়ার্ড কোডটিকে জটিল করতে পারে এবং কোনো অপ্রত্যাশিত ফলাফল উৎপন্ন করতে পারে

যখন == অপারেটরটির জন্য বুল যা সমান, কারণ

ইনস্ট্যান্স

var x = false;             
var y = new Boolean(false);
// (x == y) true হবে, কারণ x এবং y এর মান একই

আপনার হাতে প্রয়াস করুন

যখন === অপারেটরটির জন্য বুল যা সমান নয়, কারণ === অপারেটরটির জন্য ধরন এবং মান উভয়ই সমান হতে হবে

ইনস্ট্যান্স

var x = false;             
var y = new Boolean(false);
// (x === y) false হবে, কারণ x এবং y এর ধরন ভিন্ন

আপনার হাতে প্রয়াস করুন

বা আরও খারাপ

ইনস্ট্যান্স

var x = new Boolean(false);             
var y = new Boolean(false);
// (x == y) false হবে, কারণ অবজেক্টকে তুলনা করা যায় না

আপনার হাতে প্রয়াস করুন

দুইটি জেভাস্ক্রিপ্ট অবজেক্টকে তুলনা করলে সবসময় false ফলাফল দেওয়া হবে

পূর্ণাঙ্গ বুল রেফারেন্স ম্যানুয়েল

সমস্ত রেফারেন্স ম্যানুয়েল পূর্ণাঙ্গ পাবলিক করতে আমাদের জেভাস্ক্রিপ্ট বুল রেফারেন্স ম্যানুয়েল

রেফারেন্স ম্যানুয়েলটিতে সমস্ত বুল অ্যাট্রিবিউট এবং মথডসের বিবরণ এবং ইনস্ট্যান্স রয়েছে