JavaScript 為什麼是一種無型別語言?
JavaScript 是一種無型別語言,因為在 JavaScript 中,變數可以儲存任何資料型別,這意味著 JavaScript 沒有型別宣告,建立變數時不需要指定任何資料型別,這與其他程式語言(如Java、C#、C++等)不同,後者需要使用int、char、float等來建立變數。
在 JavaScript 中,我們使用var、let 和 const來建立變數。無型別語言的一大優點是它提供了靈活性,可以將任何型別的值重新賦值給變數,無論初始值是否與重新賦值的值型別相同。
示例 1
在這個示例中,我們建立了一個名為“x”的變數,併為其賦值一個數字,然後賦值一個字串,然後賦值一個數組,然後賦值一個物件、undefined 和 null。在每一步中,我們都列印變數“x”的型別。
<html> <head> <title> Example - JavaScript is an untyped language </title> </head> <body> <h2>JavaScript is an untyped language </h2> <p>Printing the type of variable after reassigning multiple data types into it.</p> <p id ="result"></p> </body> <script> let x = 10; document.getElementById("result").innerHTML += typeof x + "<br>"; x = "Tutorials Point" document.getElementById("result").innerHTML += typeof x + "<br>"; x = [1, 2,3 ,4, 5, 6] document.getElementById("result").innerHTML += typeof x + "<br>"; x = {name: "Saurabh"} document.getElementById("result").innerHTML += typeof x + "<br>"; x = undefined document.getElementById("result").innerHTML += typeof x + "<br>"; x = null document.getElementById("result").innerHTML += typeof x + "<br>"; x = function(){} document.getElementById("result").innerHTML += typeof x + "<br>"; </script> </body> </html>
示例 2
在 JavaScript 中,我們可以對兩種不同型別的變數進行任何運算。
例如,如果我們將 2(型別:數字)與“3”(型別:字串)相加,則得到“22”(型別:字串),而不是任何錯誤,這也是無型別語言的一個特性。
<!DOCTYPE html> <html> <head> <title> How is JavaScript an untyped language </title> </head> <body> <h2> How is JavaScript an untyped language ? </h2> <p>Adding two different type variables.</p> <p id ="result"></p> </body> <script> let x = 2; // Number let y = "3" // String let sum = x + y; document.getElementById("result").innerHTML += sum + "<br>" // 23 document.getElementById("result").innerHTML += typeof sum // String </script> </body> </html>
示例 3
在下面的示例中,我們定義三個變數來儲存三個年齡。我們使用 var、let 和 const 來定義變數。
<html> <body> <p id ="result"></p> <script> var age1 = 20; let age2 = 18; const age3 = 32; function check(age){ if (age > 18) { document.getElementById("result").innerHTML +="Qualified for driving<br>"; } else { document.getElementById("result").innerHTML +="Not Qualified for driving<br>" } } check(age1); check(age2); check(age3); </script> </body> </html>
示例 4
在下面的示例中,我們定義兩個變數,第一個儲存字串,第二個儲存布林值。我們使用 document.write() 顯示這兩個變數。
<html> <head> </head> <body> <script> const price = "Is price good?" var flag = true document.write(price+flag) </script> </body> </html>
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP