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

JavaScript 与 C语言基础知识差别

一, 变量声明对比

C语言:

int age = 20;            // 必须指定类型
float price = 9.99;
char grade = 'A';
const double PI = 3.14;  // 常量

JavaScript:

let age = 20;         // 数字
var price = 9.99;     // 现在不用,有缺点
const PI = 3.14;      // 常量// 可以随时改变类型
let value = 100;      // 数字
value = "一百";       // 变成字符串(合法但不推荐)

二、输入输出

1. C语言输入输出

#include <stdio.h>int main() {int num;// 输出printf("请输入数字: ");  // 打印提示printf("换行\n");       // \n换行// 输入scanf("%d", &num);      printf("你输入的是: %d", num);return 0;
}

2. JavaScript输入输出

// 控制台输出
console.log("普通信息");
console.warn("警告信息");
console.error("错误信息");// 浏览器弹窗
alert("提示信息");          // 只有确定按钮
let name = prompt("请输入名字"); // 获取用户输入
let isOk = confirm("确定吗?");  // 确认对话框// 网页输出
document.write("直接写入");  // 会覆盖整个文档(慎用)
//后续dom操作更安全

三、JavaScript 特有的模板字符串(${})

1. 使用方式

// 传统
let str1 = "姓名:" + name + ",年龄:" + age;// 模板字符串方式
let str2 = `姓名:${name},年龄:${age}`;

2. 用法

(1)变量插入

let price = 99.8;
console.log(`价格:${price}`);  // 价格:99.8元

(2)表达式计算

console.log(`合计:${5 * 20}`); // 合计:100元

(3)函数调用

function discount() { return 0.8; }
console.log(`折后价:${100 * discount()}`); // 折后价:80元

3. 使用

(1)生成HTML内容

let items = ["苹果", "香蕉"];
let html = `<ul>${items.map(item => `<li>${item}</li>`).join('')}</ul>
`;

(2)多行文本处理

let letter = `尊敬的${userName}:您的订单已发货。预计${deliveryDate}送达。
`;

4. 注意事项

  1. 必须使用反引号(`)包裹
  2. ${}内部可以是任意合法JavaScript表达式

三、数组

1. 创建数组

// 创建空数组
let arr1 = [];  // 创建带初始值的数组
let fruits = ["苹果", "香蕉", "橙子"];// 创建指定长度的空数组
let emptyArr = new Array(3);  // [empty × 3]

2. 增删元素方法

方法作用示例结果
push()末尾添加fruits.push("芒果")[“苹果”,“香蕉”,“橙子”,“芒果”]
pop()删除最后一个fruits.pop()[“苹果”,“香蕉”]
unshift()开头添加fruits.unshift("梨")[“梨”,“苹果”,“香蕉”]
shift()删除第一个fruits.shift()[“苹果”,“香蕉”]
splice(起始位置,删除元素的个数)任意位置增删fruits.splice(1,1)[“苹果”,“柠檬”,“橙子”]
  • pop()shift()返回删除元素的值
  • splice()返回本次删除元素组成的新数组

三、函数

1. 定义方式对比

C语言:

// 必须指定返回类型和参数类型
int add(int a, int b) {return a + b;
}

JavaScript:

// 1. 函数声明
function add(a, b) {return a + b;
}// 2. 函数表达式 
const add = function(a, b) {return a + b;
};// 3. 立即执行函数 可以解决命名不能冲突的问题
(function() {console.log("立即执行");
})();
http://www.dtcms.com/a/278482.html

相关文章:

  • GO语言中的垃圾回收(GC)
  • 怎么挑选最新贝琪入门电钢琴才高效?
  • Java进程、线程与协程对比
  • GD32/STM32嵌入CMSIS-DSP的库(基于Keil)
  • 2025年 GitHub 主流开源视频生成模型介绍
  • Go语言第一个程序--hello world!
  • arthas:Java 应用问题诊断利器
  • 企业培训笔记:axios 发送 ajax 请求
  • vue中计算属性的介绍
  • 前端基础知识TypeScript 系列 - 08(TypeScript 装饰器的理解)
  • 代理模式详解:代理、策略与模板方法模式
  • SpringMVC1
  • GraphRAG核心提示词工程完整中文版
  • VyOS起步指南:用Docker快速搭建网络实验环境
  • 分享三个python爬虫案例
  • HTML应用指南:利用GET请求获取河南省胖东来超市门店位置信息
  • STM32新建工程
  • HTB 赛季8靶场 - Outbound
  • 微算法科技技术创新,将量子图像LSQb算法与量子加密技术相结合,构建更加安全的量子信息隐藏和传输系统
  • 复习笔记 38
  • 安卓基于 FirebaseAuth 实现 google 登录
  • 【小米训练营】C++方向 实践项目 Android Player
  • C++ 左值右值、左值引用右值引用、integral_constant、integral_constant的元模板使用案例
  • 量子计算新突破!阿里“太章3.0”实现512量子比特模拟(2025中国量子算力巅峰)
  • ethers.js-5–和solidity的关系
  • RPC 框架学习笔记
  • Spark 之 like 表达式
  • 软件测试中的BUG等级与生命周期详解
  • 走近科学IT版:EasyTire设置了ip,但是一闪之后就变回到原来的dhcp获得的地址
  • ros2版本自定义插件的实现与热插拔