JavaScript数据类型和变量

简介: 本文目录1. 数据类型2. undefined和null的区别3. typeof判断类型4. 局部变量和全局变量

1. 数据类型

虽然JS里面可以直接写


<script>

a=1;

b="2";

</script>

1

2

3

4

但是实际上js的所有变量/常量都是有类型的。


JS所有的数据类型分为5类


string 字符串类型

number 数字类型

boolean 布尔类型

object 对象类型 (需要注意的是null是对象类型的空值)

function 函数类型

undefined (未定义,不知道是什么数据类型)

1

2

3

4

5

6

2. undefined和null的区别

null是有类型的,只是没有值(值为空),而undefined直接连类型都没有(类型为未定义类型)


比如


a=1;

console.log(typeof(a));//number

a=null;

console.log(typeof(a));//object

console.log(typeof(b));//undefined

1

2

3

4

5

从上面也可以看出,其实JS中一切都是对象哦,再举一个神奇的例子,


function test(){

 var x = "123";              

 var y = new String("123");

 console.log(x ==y);// 结果为 true 都是值为"123"的字符串

 console.log(x === y);// 结果为 false,因为 x 是字符串,y 是对象

}

1

2

3

4

5

6

3. typeof判断类型

typeof函数可以返回对象的类型:


function test(){

 console.log(typeof("123"));// 返回 string

 console.log(typeof(123));// 返回 number

 console.log(typeof(true));// 返回 boolean

 console.log(typeof([1,2,3]));// 返回 object

 console.log(typeof({name:"maoge"}));// 返回 object

 console.log(typeof(function(){}));// 返回 function

 console.log(typeof(x));// 返回 undefined

 console.log(typeof(null));// 返回 object

}

1

2

3

4

5

6

7

8

9

10

判断相等


===成立,必须typeof的类型相同,值也相同

==仅判断值,如果类型不同会转换类型

1

2

console.log(1==="1");//false

console.log(1=="1");//true

1

2

4. 局部变量和全局变量

规则:

函数内部使用var声明:局部变量

函数外部使用var声明:全局变量

未使用var声明:全局变量(无论是否在函数内部)

1

2

3

4

还是建议统一先用var声明了再使用!

相关文章
|
2月前
|
存储 JavaScript 对象存储
js检测数据类型有那些方法
js检测数据类型有那些方法
137 59
|
2月前
|
JavaScript 前端开发
JavaScript如何判断变量undefined
JavaScript如何判断变量undefined
|
2月前
|
JavaScript 前端开发
JavaScript基础知识-变量的声明提前
关于JavaScript变量声明提前特性的基础知识介绍。
44 0
JavaScript基础知识-变量的声明提前
|
11天前
|
前端开发 JavaScript
如何在 JavaScript 中访问和修改 CSS 变量?
【10月更文挑战第28天】通过以上方法,可以在JavaScript中灵活地访问和修改CSS变量,从而实现根据用户交互、页面状态等动态地改变页面样式,为网页添加更多的交互性和动态效果。在实际应用中,可以根据具体的需求和场景选择合适的方法来操作CSS变量。
|
11天前
|
前端开发 JavaScript 数据处理
CSS 变量的作用域和 JavaScript 变量的作用域有什么不同?
【10月更文挑战第28天】CSS变量和JavaScript变量虽然都有各自的作用域概念,但由于它们所属的语言和应用场景不同,其作用域的定义、范围、覆盖规则以及与其他语言特性的交互方式等方面都存在明显的差异。理解这些差异有助于更好地在Web开发中分别运用它们来实现预期的页面效果和功能逻辑。
|
11天前
|
前端开发 JavaScript UED
如何使用 JavaScript 动态修改 CSS 变量的值?
【10月更文挑战第28天】使用JavaScript动态修改CSS变量的值可以为页面带来更丰富的交互效果和动态样式变化,根据不同的应用场景和需求,可以选择合适的方法来实现CSS变量的动态修改,从而提高页面的灵活性和用户体验。
|
27天前
|
存储 JavaScript 前端开发
JavaScript 数据类型详解:基本类型与引用类型的区别及其检测方法
JavaScript 数据类型分为基本数据类型和引用数据类型。基本数据类型(如 string、number 等)具有不可变性,按值访问,存储在栈内存中。引用数据类型(如 Object、Array 等)存储在堆内存中,按引用访问,值是可变的。本文深入探讨了这两种数据类型的特性、存储方式、以及检测数据类型的两种常用方法——typeof 和 instanceof,帮助开发者更好地理解 JavaScript 内存模型和类型检测机制。
59 0
JavaScript 数据类型详解:基本类型与引用类型的区别及其检测方法
|
2月前
|
存储 前端开发 JavaScript
前端基础(二)_JavaScript变量、JavaScript标识符、JavaScript获取元素、JavaScript的鼠标事件
本文介绍了JavaScript变量的声明和使用、标识符的命名规则、如何获取和操作HTML元素,以及JavaScript的鼠标事件处理,通过示例代码展示了这些基础知识点在实际开发中的应用。
43 2
前端基础(二)_JavaScript变量、JavaScript标识符、JavaScript获取元素、JavaScript的鼠标事件
|
1月前
|
JavaScript 前端开发 开发者
【干货拿走】JavaScript中最全的数据类型判断方法!!!!
【干货拿走】JavaScript中最全的数据类型判断方法!!!!
21 1
|
23天前
|
JavaScript 前端开发
局部 JavaScript 变量
JavaScript 中,函数内部使用 `var` 声明的变量为局部变量,仅在函数内可见,函数执行完毕后被删除。全局变量则在函数外部声明,整个页面的脚本和函数均可访问,页面关闭后才被删除。未声明的变量赋值会自动成为 `window` 对象的属性,且在非严格模式下可被删除。