数据类型
基本数据类型
number用于任何类型的数字:整数或浮点数在±(253-1)范围内的整数。bigint用于任意长度的整数。string用于字符串,一个字符串可以包含0个,1个或多个字符。boolean用于true和false。null用于未知的值——只有null值的独立类型。undefined用于未定义的值——只有一个undefined值的独立类型。symbol用于唯一的标识符。object用于更复杂的数据结构。
typeof的使用
- 两种形式:
typeof x或typeof(x)。 - 以字符串形式返回类型名称,例如:
"string"。 typeof null会返回"object"——这是官方承认的typeof的行为上的错误,这个问题来自于JavaScript语言的早期,并为了兼容性而保留了下来。实际上,null绝对不是一个object。- JavaScript中没有一个特别的
"function"类型,函数隶属于"object"类型。但是typeof会对函数区分对待,并返回"function"。这也是来自于JavaScript语言早期的问题。从技术上讲,这种行为是不正确的,但在实际编程中却非常方便。
交互:alert,prompt 和 confirm
alert
显示信息
prompt
result = prompt(title, [default])
title 显示给用户的文本
default 可选的第二个参数,指定input框的初始值
点击确定返回文本,点击取消或按下Esc键返回null。
⚠ IE 浏览器会提供默认值
第二个参数是可选的。但是如果我们不提供的话,IE 会把"undefined"插入到prompt。
let test = prompt("Test");
/*相当于let test = prompt("Test", "undefined");*/
所以,为了prompt在IE中有好的效果,建议始终提供第二个参数:
let test = prompt("Test", ''); //用于IE浏览器
confirm
result = confirm(question);
显示信息等待用户点击确定或取消。点击确定返回true,点击取消或按下Esc键返回false。
这些方法都是模态的:它们暂停脚本的执行,并且不允许用户与该页面的其余部分进行交互,直到窗口被解除。
上述所有方法共有两个限制:
- 模态串口的确切位置由浏览器决定。
- 窗口的确切外观也取决于浏览器,我们不能修改它。