JavaScript变量无类型,值有类型;含7种原始类型(string、number、boolean、null、undefined、symbol、bigint)和对象类型(null除外);推荐用const/let声明,查类型用合适方法,比较优先===。

JavaScript 变量本身没有“类型”,真正有类型的是变量所存储的值。也就是说,变量是松散类型的(dynamic typing),同一个变量可以先后保存不同类型的数据。
这些值直接存储在栈内存中,按值访问:
"hello"、'world'、`template ${x}`
42、3.14、Infinity、NaN
true 和 false
n 后缀,如 123n
所有非原始类型的值都是 object 的实例,包括:
{ name: "Alice", age: 30 }
[1, 2, 3](本质是特殊对象)function foo() {}(函数也是对象)new Date()
/abc/g
typeof null === "object"(这是历史 bug),但它仍是原始类型,不是对象推荐使用 const 和 let,避免 var:
立即学习“Java免费学习笔记(深入)”;
示例:
const PI = 3.14159; // ✅ 常量,不改值
const user = { name: "Tom" }; // ✅ 对象可修改属性,但不能 user = {}
user.name = "Jerry"; // ✅ 合法
let count = 0; // ✅ 需要递增时用 let
count++; // ✅
var oldStyle = "avoid"; // ❌ 不推荐
undefined;读取未声明的变量 → 报 ReferenceError
typeof null(返回 "object"),可用 value === null 或 Object.prototype.toString.call(value) === "[object Null]"
Array.isArray(arr),而不是 typeof arr === "object" 或 arr instanceof Array(后者跨 iframe 失效)obj.name)适合已知固定键名;方括号(obj[key])适合动态键名或含特殊字符的键0 == false 是 true,但 0 === false 是 false;建议优先用严格相等 ===
基本上就这些。核心是理解“值有类型,变量没有”,并养成用 const/let、查类型用合适方法、比较用 === 的习惯。
以上就是javascript变量有哪些类型_怎样正确声明和使用它们?的详细内容,更多请关注php中文网其它相关文章!
java怎么学习?java怎么入门?java在哪学?java怎么学才快?不用担心,这里为大家提供了java速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号