代码写在哪儿、怎么写备忘、怎么把结果"打小票"看?这三件事是写代码的基本功。先点按钮看看各种打印长什么样。
就像你学英语可以写在课本上、笔记本上、单独的本子上,JS 代码也有三个家。跟 CSS 的引入思路很像:
// 1. 行内式:直接写在按钮的"事件属性"里(写着玩可以,正式项目别用)
<input type="button" value="点我" onclick="alert('Hello')" />
// 点一下这个按钮,就会执行 onclick 后面引号里的代码
// 2. 内嵌式:用一对 <script> 把代码包在页面里(课堂常用)
// 记住:放到 body 最底下,等网页元素都加载好了再跑
<body>
<div>内容</div>
<script> alert('Hello World'); </script>
</body>
// 3. 外部式:代码单独存成一个 .js 文件,再用 src 引进来(正式项目首选)
<script src="./my.js"></script>
// src = "文件路径",告诉浏览器去哪个文件拿代码
如果你在同一个 script 标签里又写了 src、又在里面夹了代码,浏览器就会只认 src、把里面夹的代码全忽略,因为它以为你要去外部文件拿。这俩只能二选一,新手常踩。
| 写法 | 优点 | 缺点 | 什么时候用 |
|---|---|---|---|
| 行内式 | 一行写完,省事 | 网页和代码缠在一起,乱 | 小 demo |
| 内嵌式 | 集中在一起,好调试 | 只能这一个页面用 | 课堂学习 |
| 外部式 | 干干净净、多个页面共用 | 多一个文件 | 正式开发 |
注释就是代码里的"悄悄话/备忘",浏览器看到它直接跳过不执行。写注释是好习惯,半个月后你自己都看不懂没注释的代码。
// 这是单行注释,快捷键 Ctrl + /(光标放哪行按一下就注释) let num = 10; /* 这是多行块注释 可以写一大段说明 快捷键 Shift + Alt + A */ let name = "前端学员";
写代码经常要"看看中间结果对不对",就像算账要打一张小票。按 F12 或 Ctrl+Shift+I 打开开发者工具,切到 Console(控制台)面板,就是看小票的地方。打印出来不挡着代码往下跑。
console.log("Hello JS"); // 普通小票,白色字
let age = 18; // 先准备一个数字,等下打印用
// 一次打好几样,用逗号隔开,浏览器自动在中间加空格
console.log("姓名:", name, "年龄:", age);
console.warn("库存不足"); // 黄色小票:警告
console.error("网络请求失败"); // 红色小票:出错了
// count:记一下"这行代码被执行了几次",适合循环/点按钮时用
console.count("执行次数"); // 第一次打印 1,再调一次打印 2
// time / timeEnd:掐表,看一段代码跑了多少毫秒
console.time("循环耗时"); // 开始掐表(起个名字)
for (let i = 0; i < 10000; i++) {} // 跑一万次空循环
console.timeEnd("循环耗时"); // 停表,打印用了多少毫秒
如果你 time 起名叫 "循环耗时"、timeEnd 却写成了 "循环用时",两个名字对不上,浏览器就不知道停哪块表,因为它是靠一模一样的名字配对的。作业里让你"一条语句打三个变量",练的就是逗号分隔多参数。
① 可能在什么地方用:写小 demo 用内嵌;正式项目把代码抽成 main.js 外部引入;调试时用 console.log 看中间值。
② 常见的问题:点按钮没反应,F12 一看满屏红;或者 src 路径写错,js 文件直接 404 没加载到。
③ 解决思路:F12 打开 Console 看第一条红色报错;切到 Network 看那个 js 文件是不是 404。