JavaScript的变量:变量值的数据类型
JavaScript的每个变量都会有有一个变量值,变量值都有对应的数据类型。在JavaScript中变量有两种不同的数据类型:基本类型和引用类型。在不同的地方对这两种数据类型的称呼也略有不同。比如,基本类型又称之为原始类型(拥有方法的类型或者可变类型),引用类型又称之为对象类型(不能拥有方法的类型或者不可变类型)。不管怎么称呼,都是依据数据类型的特点来命名的。
JavaScript的每个变量都会有有一个变量值,变量值都有对应的数据类型。在JavaScript中变量有两种不同的数据类型:基本类型和引用类型。在不同的地方对这两种数据类型的称呼也略有不同。比如,基本类型又称之为原始类型(拥有方法的类型或者可变类型),引用类型又称之为对象类型(不能拥有方法的类型或者不可变类型)。不管怎么称呼,都是依据数据类型的特点来命名的。
在《JavaScript变量:变量声明》一文中了解了,在JavaScript中可以通过关键词var
、let
和const
来声明一个变量。并且提到过,使用let
和const
声明的变量不存在变量提升;而使用var
声明的变量存在变量提升。那么什么是变量提升,这篇文章主要来介绍的就是这方面的知识。
在《变量值的数据类型》一文中,了解到了JavaScript的变量主要有基本类型(undefined
、null
、boolean
、number
和string
, ES6中还新增了Symbol
)和引用类型(对象、数组、函数)。但在JavaScript中用户定义的类型(object
)并没有类的声明,因此继承关系只能通过构造函数和原型链接来检查。而在这篇文章中,主要整理了在JavaScript中如何检测一个变量的类型。
JavaScript中的递增和递减运算符都是一元操作符,言外之意就是只能操作一个值的操作符。递增和递减操作符直接借鉴自C语言,各有两种版本:前置型(递增++i
,递减--i
)和后置型(递增i++
,递减i--
)。在JavaScript中,递增(递减)的前置和后置运算符对于初学者都非常容易混淆。我就属于这一类型,这次下定决心把这两者的使用和不同之处了解清楚。如果你和我一样,不仿一起来了解一二。
大家知道,==
是JavaScript中比较复杂的一个运算符。它的运算规则奇怪,容易让人犯错,从而成为JavaScript中“最糟糕的特性”之一。在仔细阅读了ECMAScript规范的基础上,我画了一张图,我想通过它你会彻底地搞清楚关于==
的一切。同时,我也试图通过此文向大家证明==
并不是那么糟糕的东西,它很容易掌握,甚至看起来很合理。
前端的学习是永无止境的,总是不断的有新知识需要学习,为了能跟上节奏,也硬逼自己开始学习一些ES6相关的知识。今天先来学习ES6中的箭头函数。在学习箭头函数之前先简单的回顾一下JavaScript中的一些概念。
JavaScript中的一个对象就是一系列属性的集合,一个属性包含一个属性名和一个属性值(key/value
)。一个属性的值可以是函数(这个时候也被称为方法)。除了内置的对象之外,还可以自定义对象。接下来学习在JavaScript中怎么使用对象、属性、函数和方法以及怎么自定义创建对象。
在JavaScript中,几乎每一个值都是某种特定类型的对象,于是ES6也着重提升了对象的功能性。上周花了一周的时间了解了JavaScript中的对象相关的知识,对于ES6中有关于对象的扩展功能并不太了解。今天开始就来简单的了解和学习有关于ES6中对象的扩展功能。ES6通过多种方式来加强对象的使用,通过简单的语法扩展,提供了更多操作对象及对象交互的方法。接下来的内容就是有关于这些知识的整理。
这篇文章主要探讨和学习如何在ES6中处理变量和作用域。
ES6提供了两种新的声明变量的方法:let
和const
,它们主要替换ES5中使用var
声明变量。