Có một số khác biệt giữa null và không xác định, đôi khi được hiểu là giống nhau
Sự định nghĩa
Vô giá trị. Đó là sự vắng mặt có chủ ý của giá trị. Nó là một trong những giá trị nguyên thủy của JavaScript
Chưa xác định. Nó có nghĩa là giá trị không tồn tại trong trình biên dịch. Nó là đối tượng toàn cầu
Loại
Vô giá trị. Mục tiêu
Chưa xác định. chưa xác định
Bạn có thể xem tham khảo bài viết “==” vs “===”
null == undefined // true null === undefined // false
Nó có nghĩa là null bằng với không xác định nhưng không giống nhau
Khi chúng tôi định nghĩa một biến thành không xác định thì chúng tôi đang cố truyền đạt rằng biến đó không tồn tại. Khi chúng tôi định nghĩa một biến thành null thì chúng tôi đang cố truyền đạt rằng biến đó trống
Nếu bạn muốn hiểu định nghĩa của undefined trong JavaScript, bạn phải biết định nghĩa của khai báo và định nghĩa trong JavaScript. Khai báo một biến trong JavaScript với từ khóa var được cho là một khai báo
Thí dụ. tên biến;
- Sự định nghĩa. Gán một giá trị cho một biến được khai báo trong JavaScript được cho là định nghĩa
Thí dụ. tên=10;
- Chưa xác định. Biến được khai báo không xác định trong JavaScript được coi là không xác định. Điều đó có nghĩa là chúng ta không được gán bất kỳ giá trị nào cho biến đã khai báo
Thí dụ. tên biến;
Bắt đầu khóa học phát triển phần mềm miễn phí của bạn
Phát triển web, ngôn ngữ lập trình, kiểm thử phần mềm và những thứ khác
Cách không xác định hoạt động trong JavaScript?
Vì JavaScript được gõ lỏng lẻo [loại biến không quan trọng], nếu chúng ta không gán bất kỳ giá trị nào cho một biến thì máy JavaScript sẽ tự động gán giá trị không xác định cho nó
cú pháp
a. var book;
b. var obj={};
c. var array=[];
d. var fun=function[]
{
return;
};
e. var fun=function[a]
{
return a;
}
fun[];
Giải trình
- Trong Cú pháp, một biến sách không được xác định nên máy JavaScript được gán không xác định làm giá trị của nó
- Trong Cú pháp b, biến đối tượng obj không được xác định nên máy JavaScript được gán không xác định làm giá trị của nó
- Trong Cú pháp mảng c biến mảng không được xác định nên máy JavaScript được gán không xác định làm giá trị của nó
- Trong Cú pháp, biến hàm d fun không trả về bất kỳ giá trị nào nên máy JavaScript được gán không xác định làm giá trị của nó
- Trong Cú pháp, biến hàm fun đang cố trả về giá trị không xác định nên máy JavaScript được gán giá trị không xác định
- Cách tốt nhất để so sánh giá trị là giá trị không xác định hay không trong JavaScript là sử dụng từ khóa typeof
Ghi chú. null được gán bởi một chương trình một cách rõ ràng, trong khi undefined là giá trị được gán bởi máy JavaScript bên trong
Ví dụ về JavaScript không xác định
Các ví dụ sau đây được đưa ra dưới đây
Gói phát triển phần mềm tất cả trong một[hơn 600 khóa học, hơn 50 dự án]
Giá bán
Xem các khóa học
Hơn 600 khóa học trực tuyến. hơn 50 dự án. Hơn 3000 giờ. Giấy chứng nhận có thể kiểm chứng. Truy cập trọn đời
4. 6 [86.328 xếp hạng]
Ví dụ #1 – Trả về biến không xác định
Mã số
var name;
document.write["My name is : "+name];
đầu ra
Giải trình
- Trong đoạn mã trên, chúng tôi đang cố in một tên biến không xác định, vì vậy, chúng tôi nhận được đầu ra là Tên tôi là. chưa xác định
Ví dụ #2 – Gán giá trị cho một biến không xác định
Mã số
var name;
if[typeof name==='undefined']
{
name="Amardeep";
}
document.write["My name is : "+name+" after reassing"];
đầu ra
Giải trình
- Chúng tôi đang kiểm tra biến tên có phải là “không xác định” hay không với toán tử typof
- tên biến không được xác định vì vậy nếu điều kiện trở thành đúng
- biến tên gán lại cho Chuỗi “Amardeep”
- In giá trị được gán lại ở dòng cuối cùng
Ví dụ #3 – In giá trị đối tượng không xác định
Mã số
var obj={};
document.write["My object name is : "+obj.name];
đầu ra
Giải trình
- Trong đoạn mã trên, chúng tôi đang cố in tên giá trị đối tượng không xác định từ obj, vì vậy, chúng tôi nhận được giá trị không xác định làm đầu ra
Ví dụ #4 – Gán giá trị cho đối tượng không xác định
Mã số
var x={};
if[typeof x.age==='undefined']
{
x.age=24;
}
document.write["My object value is : "+x.age+" after reassigning age"];
đầu ra
Giải trình
- Chúng tôi đang kiểm tra đối tượng tuổi đầu tiên là "không xác định" hay không với toán tử typof
- biến tuổi không được xác định vì vậy nếu điều kiện trở thành đúng
- biến age gán lại cho số 24
- In giá trị được gán lại ở dòng cuối cùng
Ví dụ #5 – In giá trị mảng không xác định
Mã số
var x=[];
document.write["My array value is : "+x[0]];
đầu ra
Giải trình
- Trong đoạn mã trên, chúng tôi đang cố in giá trị mảng không xác định của x[0] từ mảng x, vì vậy, chúng tôi nhận được giá trị không xác định làm đầu ra
Ví dụ #6 – Gán giá trị cho chỉ mục mảng không xác định
Mã số
var x=[];
if[typeof x[0]==='undefined']
{
x[0]="Paramesh";
}
document.write["My array value is : "+x[0]+" after reassinging"];
đầu ra
Giải trình
- Chúng tôi đang kiểm tra giá trị x[0] đầu tiên có phải là “không xác định” hay không với typof
- giá trị mảng x[0] không được xác định nên nếu điều kiện trở thành true
- Biến X[0] gán lại cho Chuỗi “Paramesh”
- In giá trị được gán lại ở dòng cuối cùng
Ví dụ #7 – Trả về giá trị không xác định từ hàm
Mã số
________số 8_______đầu ra
Giải trình
- Trong đoạn mã trên, chúng tôi đang cố in giá trị hàm không xác định, vì vậy, chúng tôi đã nhận giá trị không xác định làm đầu ra
Ví dụ #8
Mã số
var x=function[]
{
return;
};
output=x[];
if[typeof output==='undefined']
{
output="Hi"
}
document.write["My function value is : "+output+" after reassigning"];
đầu ra
Giải trình
- Chúng tôi đang kiểm tra giá trị hàm x[] đầu tiên là “không xác định” hay không với typof
- giá trị mảng x[] không được xác định nên nếu điều kiện trở thành true
- đầu ra của hàm x[] được lưu trữ trong một tên biến với đầu ra
- biến đầu ra gán lại cho Chuỗi “Xin chào”
- In giá trị được gán lại ở dòng cuối cùng
Ví dụ #9
Mã số
var x=function[number]
{
return number;
};
output=x[];
if[typeof output==='undefined']
{
output="I am reassigned"
}
document.write["My function value is : "+output];
đầu ra
Giải trình
- Đầu tiên, chúng tôi đang xác định một chức năng với một tham số
- Chúng tôi đang kiểm tra giá trị hàm x[] đầu tiên là “không xác định” hay không với typof
- giá trị mảng x[] không được xác định vì đối số số không được truyền từ hàm x[] nên nếu điều kiện trở thành true
- đầu ra của hàm x[] được lưu trữ trong một tên biến với đầu ra
- biến đầu ra gán lại cho Chuỗi "Tôi được gán lại"
- In giá trị được gán lại ở dòng cuối cùng
Phần kết luận
JavaScript tất cả các biến được khai báo và không được xác định sẽ tự động được gán cho giá trị không xác định thông qua Máy JavaScript. Cách tốt nhất để kiểm tra một biến hoặc hàm không xác định hay không là sử dụng toán tử typof
Bài viết được đề xuất
Đây là hướng dẫn về JavaScript không xác định. Ở đây, chúng ta thảo luận về cách không xác định hoạt động trong JavaScript cùng với cú pháp thích hợp và các ví dụ tương ứng. Bạn cũng có thể xem qua các bài viết liên quan khác của chúng tôi để tìm hiểu thêm–