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.pswp.cn/pingmian/88816.shtml
繁体地址,请注明出处:http://hk.pswp.cn/pingmian/88816.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

无缝矩阵支持音频分离带画面分割功能的全面解析

一、技术原理与实现方式1. 音频分离技术核心功能&#xff1a;HDMI无缝矩阵通过硬件或软件实现音频加嵌与分离功能&#xff0c;支持多设备音频的独立处理与增强。实现方式&#xff1a;音频加嵌&#xff1a;将外部音频信号&#xff08;如麦克风、调音台&#xff09;嵌入HDMI信号中…

AI创作系列第18篇:海狸IM移动端UI统一大升级 - 从混乱到规范的技术重构之路

AI创作系列第18篇&#xff1a;海狸IM移动端UI统一大升级 - 从混乱到规范的技术重构之路本文是海狸IM AI创作系列的第18篇文章&#xff0c;记录7月11日-13日周末期间对移动端的UI统一升级工作。这次重构不是功能性的&#xff0c;而是架构性的 - 我们重新设计了整个UI架构&#x…

八、nginx搭建,实现vue跳转nginx跳转gateway

基本的调用链路: vue调用nginx,nginx反向代理gateway,gateway看用户是否登录,没有登录的话,就创建验证码并先输入密码后获取token。 截止现在我们创建了两个项目能够通过feign调用,并且创建好了gateway,且能调用对应的项目。 这一章节,我们搭建好nginx,通过反向代理,…

C++ 中常见的字符串定义方式及其用法

引言 最近在学习C&#xff0c;下面将从基础到进阶的顺序&#xff0c;列出一些 C 中常见的字符串定义方式及其用法&#xff0c;包含完整代码和详细注释&#xff0c;加深对代码的理解。 C 风格字符串&#xff08;char*或 char[]&#xff09; 定义方式 #include <iostream>i…

下一代防火墙-防范DOS攻击、IPS防护、web防护实验

一、实验拓扑二、实验设备1.山石网科系列下一代防火墙2.三层交换机一台3.windows两台4.各种工具&#xff0c;如hyenae、小旋风服务器、永恒之蓝等等三、实验目的1.掌握网络攻击防护策略配置2.通过下一代防火墙来防护服务器免受DOS攻击四、防范Dos攻击实验1.将一台windows配置为…

【人工智能】通过 Dify 构建智能助手

通过 Dify 构建智能助手1.定义2.如何使用智能助手3.添加助手需要的工具4.配置 Agent5.配置对话开场白6.添加文件上传7.调试与预览8.应用发布1.定义 智能助手&#xff08;Agent Assistant&#xff09;&#xff0c;利用大语言模型的推理能力&#xff0c;能够自主对复杂的人类任务…

破局与重构:文心大模型开源的产业变革密码

——从技术垄断到生态共享的战略转型深度解析 引言&#xff1a;一场静悄悄的革命 2024年&#xff0c;当百度宣布文心大模型4.5系列全面开源时&#xff0c;这不仅仅是一次技术发布&#xff0c;更是一场关于AI产业未来走向的战略博弈。在全球AI竞争白热化的当下&#xff0c;开源意…

7.15 窗口函数 | 二分 | 位运算

05.071.位运算2.位图class Solution { public:int exchangeBits(int num) {bitset<33> bitNum(num);for (int i 0; i < 16; i){bitNum[32] bitNum[2*i];bitNum[2*i] bitNum[2*i1];bitNum[2*i1] bitNum[32];}return (int)bitNum.to_ulong();} };577.员工奖金select…

Windows 安装配置Claude Code

文章目录1.安装node.js2.安装 Claude Code3.测试claude1.安装node.js https://nodejs.org/en/download/ 一路回车即可顺利安装完成。 再键盘按下Win R快捷键&#xff0c;输入cmd&#xff0c;然后回车启动命令行窗口。分别输入node -v和npm -v来查看node.js版本和npm版本。 环…

C++动态数组vector

一、为什么要用vector而不是数组 虽有嘉肴&#xff0c;弗食&#xff0c;不知其旨也。______,____,____________。 简单来说就是节约内存&#xff0c;不容易RE 二、如何使用vector 既谓之数组&#xff0c;则用之如数组 1.定义 vector<数据类型>名称 vector<int …

14.使用GoogleNet/Inception网络进行Fashion-Mnist分类

14.1 GoogleNet网络结构设计import torch from torch import nn from torch.nn import functional as F from torchsummary import summary class Inception(nn.Module):def __init__(self, in_channels,c1,c2,c3,c4,**kwargs):super(Inception,self).__init__(**kwargs)#第一条…

NE综合实验2:RIP 与 OSPF 动态路由精细配置、FTPTELNET 服务搭建及精准访问限制

NE综合实验2&#xff1a;RIP 与 OSPF 动态路由精细配置、FTPTELNET 服务搭建及精准访问限制 涉及的协议可以看我之前的文章&#xff1a; RIP实验 OSPF协议&#xff1a;核心概念与配置要点解析 ACL协议&#xff1a;核心概念与配置要点解析 基于OSPF动态路由与ACL访问控制的网…

Android 插件化实现原理详解

Android 插件化实现原理详解 插件化技术是Android开发中一项重要的高级技术&#xff0c;它允许应用动态加载和执行未安装的APK模块。以下是插件化技术的核心实现原理和关键技术点&#xff1a; 一、插件化核心思想宿主与插件&#xff1a; 宿主(Host)&#xff1a;主应用APK&#…

空间智能-李飞飞团队工作总结(至2025.07)

李飞飞团队在空间智能(Spatial Intelligence)领域的研究自2024年起取得了一系列突破性进展,其里程碑成果可归纳为以下核心方向: 一、理论框架提出与定义(2024年) 1、空间智能概念系统化 a.定义: 李飞飞首次明确空间智能为“机器在3D空间和时间中感知、推理和行动的能…

【算法深练】BFS:“由近及远”的遍历艺术,广度优先算法题型全解析

前言 宽度优先遍历BFS与深度优先遍历DFS有本质上的区别&#xff0c;DFS是一直扩到低之后找返回&#xff0c;而BFS是一层层的扩展就像剥洋葱皮一样。 通常BFS是将所有路径同时进行尝试&#xff0c;所以BFS找到的第一个满足条件的位置&#xff0c;一定是路径最短的位置&#xf…

ZW3D 二次开发-创建球体

使用中望3d用户函数 cvxPartSphere 创建球体 函数定义: ZW_API_C evxErrors cvxPartSphere(svxSphereData *Sphere, int *idShape); typedef struct svxSphereData {evxBoolType Combine; /**<@brief combination method */svxPoint Center; /**<@brief sphere ce…

艺术总监的构图“再造术”:用PS生成式AI,重塑照片叙事框架

在视觉叙事中&#xff0c;我们常常面临一个核心的“对立统一”&#xff1a;一方面是**“被捕捉的瞬间”&#xff08;The Captured Moment&#xff09;&#xff0c;即摄影师在特定时间、特定地点所记录下的客观现实&#xff1b;另一方面是“被期望的叙事”**&#xff08;The Des…

ChatGPT无法登陆?分步排查指南与解决方案

ChatGPT作为全球领先的AI对话工具&#xff0c;日均处理超百万次登录请求&#xff0c;登陆问题可能导致用户无法正常使用服务&#xff0c;影响工作效率或学习进度。 无论是显示「网络错误」「账号未激活」&#xff0c;还是持续加载无响应&#xff0c;本文将从网络连接、账号状态…

用Joern执行CPGQL找到C语言中不安全函数调用的流程

1. 引入 静态应用程序安全测试&#xff08;Static application security testing&#xff09;简称SAST&#xff0c;是透过审查程式源代码来识别漏洞&#xff0c;提升软件安全性的作法。 Joern 是一个强大的开源静态应用安全测试&#xff08;SAST&#xff09;工具&#xff0c;专…

读文章 Critiques of World model

论文名称&#xff1a;对世界模型的批判 作者单位&#xff1a; CMU&#xff0c; UC SD 原文链接&#xff1a;https://arxiv.org/pdf/2507.05169 摘要&#xff1a; 世界模型&#xff08;World Model&#xff09;——即真实世界环境的算法替代物&#xff0c;是生物体所体验并与之…