js0016 发表于 2018-12-15 | 阅读次数: 字数统计: 233 | 阅读时长 ≈ 1 使用关键字var时 该变量时在距离最近的函数内部或是在全局词法环境中定义的 1234567891011121314151617181920212223242526272829303132333435<!DOCTYPE html><html><head> <title>Using the var keyword</title> <meta charset="utf-8"> <script src="../assert.js"></script> <link rel="stylesheet" type="text/css" href="../assert.css"></head><body> <script> var globalNinja = "Yoshi"; function reportActivity(){ var functionActivity = "jumping"; for(var i = 1; i < 3; i++) { var forMessage = globalNinja + " " + functionActivity; assert(forMessage === "Yoshi jumping", "Yoshi is jumping within the for block"); assert(i, "Current loop counter:" + i); } assert(i === 3 && forMessage === "Yoshi jumping", "Loop variables accessible outside of the loop"); } // for 循环外部 仍然能够访问for循环中定义的变量 reportActivity(); assert(typeof functionActivity === "undefined" && typeof i === "undefined" && typeof forMessage === "undefined", "We cannot see function variables outside of a function"); </script></body></html>