语法格式

(1) 结尾

  • JavaScript 的语句需要使用 ; 结尾

(2) 注释

  • 单行注释 //
  • 多行注释 /* */

(3) 标识符
JavaScript 标识符包括 变量名,函数名,参数名和属性名

合法的表示符应注意以下强制规则:

  • 第一个字符必须是 字母、下划线 或 美元符号 $
  • 不能与 JavaScript 关键字、保留字重名
  • 严格区分大小写

显示数据

JavaScript 能够以以下方式 显示数据

  • 使用 alert() 弹出警告框
  • 使用 document.write() 写入 HTML 输出
  • 使用 innerHtml 写入 HTML 元素
  • 使用 console.log() 写入浏览器控制台

变量

js 是一门弱类型的语言,在 js 中的数据类型由值的类型决定,声明变量使用 var 语句

在一个 var语句中,可以声明一个或多个变量,也可以变量赋值,未赋值的变量初始化未 undefined(未定义的)

var a;
var a,b,c;
var a = 1;
var a = 1, b = "123";

变量提升

console.log(a); // undefined
a = 1;
console.log(a); // 1
var a;

在上面示例中,声明变量放在最后,赋值操作放在前面。由于 JavaScript 在预编译期已经对变量声明语句进行了预解析,所以第一行的代码读取变量值时不会抛出异常,而是返回未初始化的值 undefined,第三行带啊吗是在赋值操作之后读取,故显示为数字 1

数据类型

JavaScript 定义了 6 种基本数据类型,如下所示:

数据类型 描述
null 空值
undefined 未定义的值,表示未赋值的初始化值
number 数字
string 字符串
boolean 布尔值
object 对象,复杂结构的数据集

使用 typeof() 函数可以检测数据的基本类型

数据类型转换

函数 描述
String() 转字符串
Number() 转数字
parseInt() 转 Int类型
parseFloat() 转 Float类型
Boolean() 转布尔值

运算符

算数运算符

  • + : 加法运算
  • - : 减法运算
  • * : 乘法运算
  • / : 除法运算
  • % : 求余运算
  • ++ :
    • a++ : 赋值后对自身加1
    • ++a : 对自身加1后赋值
  • -- : 同上

比较运算符

  • < : 小于
  • > : 大于
  • <= : 小于等于
  • >= : 大于等于
  • == : 等于
  • === : 绝对等于 (值和类型均相等)
  • != : 不等于
  • !== : 不绝对等于

逻辑运算符

  • && : and
  • || : or
  • ! : not

三目运算符

<条件表达式> ? x : y

如果条件表达式成立,则执行 x ,否则,执行 y

void运算符

对给定的表达式进行求值,然后返回 undefined

var a = 1;
void(a++); // undefined
console.log(a); // 2

void应用场景

(1) JavaScript URLs

当用户点击一个以 javascript:URL 时,他会执行 URL 中的代码,然后用返回的值替换页面内容,除非返回的值是 undefined
void运算符可用于返回 undefined ,例如:

<a href="javascript:void(document.body.style.backgroundColor='green');">
  点击这个链接会让页面背景变成绿色。
</a>

(2) 填充 a 标签

有一些 a 标签,我们并不希望点击它们会跳转到另一个界面,而是引发一些交互操作

理论上而言,这类 a 标签都是没有 URL 的,但如果不写的化,点击它会刷新整个界面

因此,我们可以使用 href="javascript:void(0)" 的方式,确保点击它会执行一个纯粹无聊的 void(0)