当前位置: 首页 > news >正文

【前端】JavaScript基础知识及基本应用

下面是一些重要的 JavaScript 知识点及其详细解析:

 

1. 基本概念

变量 (Variables)

变量用于存储数据值。

let name = "Alice";

const age = 25;

数据类型 (Data Types)

原始类型:string, number, boolean, null, undefined

引用类型:object, array, function

示例:

 

let num = 42; // number type

let str = "Hello"; // string type

let bool = true; // boolean type

 

变量作用域 (Variable Scope)

变量可以在不同的作用域内声明。

 

全局变量:在所有函数外部定义的变量。

局部变量:在函数内部定义的变量。

 

示例:

 

let globalVar = "I'm Global";

 

function example() {

    let localVar = "I'm Local";

    console.log(localVar); // 输出: I'm Local

}

 

example();

console.log(globalVar); // 输出: I'm Global

 

// 尝试访问局部变量会引发错误

console.log(localVar); // ReferenceError: localVar is not defined

 

2. 控制结构 (Control Structures)

条件语句 (Conditional Statements)

if...else

switch

示例:

let age = 18;

 

if (age >= 18) {

    console.log("You are an adult.");

} else {

    console.log("You are a minor.");

}

 

// switch case 示例

const color = "red";

switch(color) {

    case 'green':

        console.log('Go');

        break;

    case 'yellow':

        console.log('Slow down');

        break;

    case 'red':

        console.log('Stop');

        break;

    default:

        console.log("Unknown");

}

 

循环语句 (Loop Statements)

for

while

do...while

示例:

 

let i = 0;

 

// for loop 示例

for(i = 0; i < 5; i++) {

    console.log(`i: ${i}`);

}

 

// while loop 示例

while (i <= 10) {

    console.log(`i in while: ${i}`);

    if (i == 8)

        break;

    i++;

}

 

// do...while loop 示例

do {

    console.log(`i in do-while: ${i}`);

} while (i++ < 5);

 

3. 函数 (Functions)

定义函数 (Defining Functions)

function greet(name) {

    return `Hello, ${name}`;

}

 

console.log(greet("Alice")); // 输出: Hello, Alice

 

匿名函数 (Anonymous Functions)

let square = function(x) {

    return x * x;

};

 

console.log(square(4)); // 输出: 16

 

4. 对象和数组 (Objects and Arrays)

创建对象 (Creating Objects)

字面量表示法

构造函数

示例:

 

let person = {

    name: "John",

    age: 30,

};

 

console.log(person.name); // 输出: John

 

// 构造函数创建对象

function Person(name, age) {

    this.name = name;

    this.age = age;

}

 

let john = new Person("John", 30);

console.log(john.name); // 输出: John

 

创建数组 (Creating Arrays)

let numbers = [1, 2, 3, 4, 5];

 

for(let i = 0; i < numbers.length; i++) {

    console.log(`numbers[${i}]: ${numbers[i]}`);

}

 

5. DOM 操作 (DOM Manipulation)

获取元素 (Getting Elements)

let paragraph = document.getElementById("myPara");

console.log(paragraph.innerHTML); // 输出: This is a paragraph.

 

修改元素属性和内容 (Modifying Element Properties and Content)

paragraph.style.color = "red";

paragraph.innerHTML += "<br>This is more content.";

 

6. 事件处理 (Event Handling)

添加事件监听器 (Adding Event Listeners)

 

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <title>Document</title>

</head>

<body>

 

<button id="myButton">Click Me!</button>

 

<script>

document.getElementById("myButton").addEventListener("click", function() {

    alert("Button clicked!");

});

</script>

 

</body>

</html>

 

7. AJAX (Asynchronous JavaScript and XML)

发送异步请求 (Sending Asynchronous Requests)

 

function loadContent(url) {

    let xhr = new XMLHttpRequest();

    xhr.onreadystatechange = function() {

        if (xhr.readyState === XMLHttpRequest.DONE && xhr.status === 200) {

            console.log(xhr.responseText);

        }

    };

    xhr.open("GET", url, true); // 第三个参数是异步标志

    xhr.send();

}

 

loadContent("/data.json");

 

总结

JavaScript 是一种强大的编程语言,能够用于控制网页的行为和响应用户交互。掌握 JavaScript 的基本概念、语法结构和常见操作方法对于开发动态网站至关重要。

 

http://www.lryc.cn/news/610297.html

相关文章:

  • C++ STL list容器详解:从基础使用到高级特性
  • AI绘图-Stable Diffusion-WebUI的基本用法
  • SwiftUI ios开发中的 MVVM 架构深度解析与最佳实践
  • 深度学习零基础入门(4)-卷积神经网络架构
  • (JAVA)自建应用调用企业微信API接口,设置企业可信IP
  • 流量见顶时代,知识付费 IP 的破局逻辑
  • 汇川PLC通过ModbusTCP转Profinet网关连接西门子PLC配置案例
  • 飞算 JavaAI 实战:从代码生成到架构优化的全场景应用指南
  • 机试备考笔记 4/31
  • springboot博客实战笔记01
  • 登Nature子刊,基于基因测序和机器学习的废水流行病学评估,病毒检出时间最高提前4周
  • 机器学习(11):岭回归Ridge
  • 服务器的Mysql 集群技术
  • 经典设计模式
  • YOLO11涨点优化:原创自研DSAM注意力!基于BiLevelRoutingAttention的颠覆性升级
  • 06 基于sklearn的机械学习-欠拟合、过拟合、正则化、逻辑回归
  • Ethereum: 深度解析Web3世界的合规之门, ERC-1400证券型代币标准
  • ISCC认证:可持续生产的新标杆。ISCC如何更快认证
  • 线程互斥锁:守护临界区的关键
  • 服务器数据安全:利用阿里云OSS/腾讯云COS实现网站数据自动备份
  • 2.5 DICOM 传输语法(Transfer Syntaxes)
  • 【Canvas与文字】生存与生活
  • 文件与目录操作命令
  • SRIO入门之官方例程仿真验证
  • History 模式 vs Hash 模式:Vue Router 技术决策因素详解
  • 数据结构——并查集及C++实现
  • 0.08B参数以小博大:用小模型生成媲美GPT-4o的古典诗词
  • 土壤温度传感器CG-03在实际应用中的价值体现
  • 刷题记录0804
  • AI小说创作工具体验:本地部署助力文学创作,Ollama+AIStarter一键搞定