JavaScript编程语言入门与常见问题

入门知识

起源与发展

++JavaScript起源于1995年,由Netscape公司的Brendan Eich设计并实现,最初名为Mocha,后更名为LiveScript,最终定名为JavaScript以借助Java的流行度。1997年,ECMA国际组织发布了ECMAScript标准,使JavaScript成为标准化的脚本语言。随后经历了多个版本的更新和改进,如ES3引入正则表达式和异常处理,ES5增加严格模式和JSON支持,ES6带来了块级作用域、箭头函数、类等现代化特性。++

变量与数据类型

在JavaScript中,使用变量来存储和操作数据。声明变量时,可以使用关键字varletconst。其中,var是ES5中的声明方式,letconst是ES6引入的声明方式。示例如下:

javascript 复制代码
// 使用 var 声明变量
var name = "John";
// 使用 let 声明变量
let age = 25;
// 使用 const 声明常量
const pi = 3.14;

函数

函数是JavaScript中的重要概念,用于封装可重复使用的代码块。函数可以有参数和返回值。示例如下:

javascript 复制代码
function add(a, b) {
    return a + b;
}
let result = add(3, 5);
console.log(result); 

条件语句

条件语句用于根据不同的条件执行不同的代码块。常见的条件语句有if-elseswitch。示例如下:

javascript 复制代码
let num = 10;
if (num > 5) {
    console.log("num 大于 5");
} else {
    console.log("num 小于等于 5");
}

let day = 3;
switch (day) {
    case 1:
        console.log("星期一");
        break;
    case 2:
        console.log("星期二");
        break;
    case 3:
        console.log("星期三");
        break;
    default:
        console.log("其他");
}

循环语句

循环语句用于重复执行一段代码。常见的循环语句有forwhiledo-while。示例如下:

javascript 复制代码
// for 循环
for (let i = 0; i < 5; i++) {
    console.log(i);
}

// while 循环
let j = 0;
while (j < 5) {
    console.log(j);
    j++;
}

// do-while 循环
let k = 0;
do {
    console.log(k);
    k++;
} while (k < 5);

在HTML中使用JavaScript

可以通过以下几种方式在HTML中使用JavaScript:

  • 行内嵌入式:直接在HTML标签的事件属性中编写JavaScript代码。
html 复制代码
<button onclick="alert('Hello!')">点击我</button>
  • 页内嵌入式 :在HTML文档的<script>标签内编写JavaScript代码。
html 复制代码
<!DOCTYPE html>
<html>
<head>
    <title>我的第一个 JS 程序</title>
</head>
<body>
    <script>
        alert('Hello, World!');
    </script>
</body>
</html>
  • 外部式(外链式) :将JavaScript代码写在一个独立的.js文件中,然后在HTML文档中使用<script>标签引入该文件。
html 复制代码
<!DOCTYPE html>
<html>
<head>
    <title>引入外部 JS 文件</title>
</head>
<body>
    <script src="script.js"></script>
</body>
</html>

常见问题

变量声明相关

在早期使用var声明变量时,存在变量提升问题,即变量可以在声明之前使用,值为undefined。而ES6引入的letconst解决了变量提升问题,具有块级作用域。

函数参数默认值设置问题

在设置函数参数默认值时,需要注意参数的顺序和默认值的合理性,避免出现逻辑错误。例如,如果一个函数有多个参数,默认值参数应该放在后面。

跨域问题

在进行数据请求时,可能会遇到跨域问题,即浏览器出于安全考虑,限制页面从不同源(协议、域名、端口)加载资源。可以通过JSONP、CORS等方式解决。

相关推荐
UIUV1 小时前
node:child_process spawn 模块学习笔记
javascript·后端·node.js
烛阴2 小时前
Three.js 零基础入门:手把手打造交互式 3D 几何体展示系统
javascript·webgl·three.js
颜酱2 小时前
单调栈:从模板到实战
javascript·后端·算法
_AaronWong4 小时前
Electron 实现仿豆包划词取词功能:从 AI 生成到落地踩坑记
前端·javascript·vue.js
JohnYan4 小时前
工作笔记-CodeBuddy应用探索
javascript·ai编程·aiops
wuhen_n5 小时前
双端 Diff 算法详解
前端·javascript·vue.js
光影少年5 小时前
说说闭包的理解和应用场景?
前端·javascript·掘金·金石计划
爱勇宝5 小时前
别再混用了!import.meta.env 与 process.env 的本质差异一次讲透
前端·javascript·vue.js
路修远i5 小时前
基于SSE的AI对话流式结构
前端·javascript
摸鱼的春哥8 小时前
春哥的Agent通关秘籍13:实现RAG查询
前端·javascript·后端