1. ctfwiki
  2. javascript
    1. 基础知识
      1. 模态窗
      2. 值比较
      3. || &&

ctfwiki

docker run -d --name=ctf-wiki -p 4100:80 ctfwiki/ctf-wiki

javascript

基础知识

模态窗

alert、prompt 和 confirm 弹出的是模态窗,js 代码会被暂停,直到处理窗口

值比较

普通的相等性检查 == 存在一个问题,它不能区分出 0 和 false: alert( 0 == false ); // true 也同样无法区分空字符串和 false:alert( '' == false ); // true,而 === 不做类型转换

|| &&

// 寻找第一个真值
result = value1 || value2 || value3;
// 短路求值
_false_ || alert("printed");
// && 也有相似的作用

|| 无法区分 false0、空字符串 "" 和 null/undefined。它们都一样 —— 假值(falsy values)。如果其中任何一个是 || 的第一个参数,那么我们将得到第二个参数作为结果。

不过在实际中,我们可能只想在变量的值为 null/undefined 时使用默认值。也就是说,当该值确实未知或未被设置时。