JavaScript(二)

JavaScript的语法

1.JavaScript的大小写

在JavaScript中,大小写是敏感的,这意味着大小写不同的标识符被视为不同的变量或函数。例如,myVariable 和 myvariable 被视为两个不同的变量。因此,在编写JavaScript代码时,必须确保正确地使用大小写。

以下是一些关于 JavaScript 大小写的要点:

 
  1. 函数名、变量名和对象属性名的大小写是重要的。
  2. 关键字(如ifforwhile等)必须按照规定的大小写书写。
  3. 命名规范通常建议使用有意义的命名,并遵循一致的大小写风格。
 

遵循一致的大小写风格有助于提高代码的可读性和可维护性。

以下是大小写敏感在JavaScript中的一些体现:

  1. 变量名
let myVariable = 10;  
console.log(myvariable); // 将会输出 undefined,因为 myvariable 和 myVariable 是不同的变量
2.函数名
function myFunction() {  console.log('Hello from myFunction!');  
}  myfunction(); // 将会抛出错误,因为 myfunction 和 myFunction 是不同的函数
3.对象属性
let obj = {  myProperty: 'Hello'  
};  console.log(obj.myproperty); // 将会输出 undefined,因为 myproperty 和 myProperty 是不同的属性
4.关键字

JavaScript中的关键字(如 varletfunctioniffor 等)也是大小写敏感的,并且必须全部小写。

let Var = 10; // 这将抛出语法错误,因为 Var 不是有效的关键字,应该是 var
5.内置对象和方法
JavaScript的内置对象(如 MathDateArray 等)和方法(如 toString()push() 等)也是大小写敏感的,并且必须使用正确的大小写。
let date = new Date(); // 正确  
let DATE = new Date(); // DATE 不是一个内置对象,这将抛出错误  let array = [];  
array.push(1); // 正确  
array.PUSH(1); // PUSH 不是一个方法,这将抛出错误

由于JavaScript是大小写敏感的,因此编写代码时保持一致性非常重要。

通常,我们遵循驼峰命名法(camelCase)来命名变量和函数,即每个单词的首字母大写,除了第一个单词。例如:myVariableName 和 myFunctionName。这种命名约定有助于代码的可读性和维护性。同时,确保在引用变量、函数、属性或内置对象时,使用正确的大小写。

2.JavaScript分号

JavaScript 中的分号是可选的,但建议在语句结束时使用分号以明确结束语句。

如果不使用分号,JavaScript 解析器会尝试在换行处自动插入分号,这种自动插入的行为被称为自动分号插入(Automatic Semicolon Insertion,ASI)。虽然 ASI 可以在某些情况下帮助纠正语法错误,但它也可能导致意外的行为,因此最好还是在语句结束时显式地添加分号,以避免可能的问题

在JavaScript中,分号(;)用于终止语句。虽然JavaScript的语法分析器(解析器)通常能够在没有显式分号的情况下推断出语句的结束(这被称为自动分号插入,ASI),但最佳实践是显式地使用分号来结束每个语句。这有助于避免潜在的错误和增强代码的可读性。

let x = 10; // 声明一个变量并赋值  
console.log(x); // 输出变量的值  if (x > 5) {  console.log("x is greater than 5"); // 如果条件为真,则输出消息  
} else {  console.log("x is not greater than 5"); // 否则输出另一条消息  
}  for (let i = 0; i < 10; i++) {  console.log(i); // 循环输出从0到9的数字  
}  function greet(name) {  console.log(`Hello, ${name}!`); // 定义并调用一个函数  
}  
greet("Alice");

虽然JavaScript引擎可以处理没有分号的代码(在大多数情况下),但依赖于自动分号插入可能会导致一些难以察觉的错误,特别是在返回语句、对象字面量、数组字面量、函数表达式等复杂结构中。因此,为了确保代码的一致性和可读性,许多开发者选择始终在语句末尾使用分号。

此外,有些代码风格指南(如Airbnb JavaScript Style Guide)也强烈推荐在语句末尾使用分号,以避免潜在的错误和代码解释上的歧义。

值得注意的是,有些压缩工具(如UglifyJS)在压缩代码时会自动移除不必要的分号,以减小文件大小。但在开发过程中,为了清晰和减少错误,最好还是显式地使用分号。

给我一个小小的关注吧,爱你爱你

一起期待一下我的下一篇吧

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/2043.shtml

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

相关文章

如何在PostgreSQL中创建并使用窗口函数来进行复杂的分析查询?

文章目录 解决方案1. 了解窗口函数的基本概念2. 常用的窗口函数3. 使用示例示例 1&#xff1a;计算每行销售数据的累计销售额示例 2&#xff1a;计算每行销售数据相对于前一行销售额的增长率 结论 PostgreSQL 提供了一套强大的窗口函数&#xff08;Window Functions&#xff09…

MQTT Broker 白皮书:全面实用的 MQTT Broker 选型指南

在智能数字化时代&#xff0c;家居设备、工厂传感器、智能汽车、能源电力计量表等各类设备都已变身为新型的智能终端。为了满足这些海量且持续增长的智能设备之间对于实时、可靠的消息传递的需求&#xff0c;MQTT Broker 消息代理或消息中间件扮演了至关重要的角色。作为新一代…

STM32H750外设ADC之模拟窗口看门狗

目录 概述 1 相关寄存器 2 功能描述 3 AWDx 标志和中断 4 模拟看门狗 1 4.1 模拟看门狗 1 说明 4.2 模拟看门狗通道选择 4.3 阀值选择 5 模拟看门狗 2和3 6 ADCx_AWDy_OUT 信号输出生成 6.1 功能介绍 6.2 输出信号案例 7 模拟看门狗 1、 2、 3 比较 概述 本文主…

Opencv_3_图像对象的创建与赋值

ColorInvert.h 如下&#xff1a; #include <opencv.hpp> using namespace std; #include <opencv.hpp> using namespace cv; using namespace std; class ColorInvert{ public : void mat_creation(); }; ColorInvert.cpp 文件如下&#xff1a; #include &q…

解决宝塔面板无法访问(无法访问或拒绝链接)

&#x1f40c;博主主页&#xff1a;&#x1f40c;​倔强的大蜗牛&#x1f40c;​ &#x1f4da;专栏分类&#xff1a;Linux ❤️感谢大家点赞&#x1f44d;收藏⭐评论✍️ 问题如下&#xff1a; 本人设置了授权IP&#xff0c;但是有些问题&#xff0c;所以是打算取消授权IP 重…

Spring Boot 自动装配执行流程

Spring Boot 自动装配执行流程 Spring Boot 自动装配执行流程如下&#xff1a; Spring Boot 启动时会创建一个 SpringApplication实例&#xff0c;该实例存储了应用相关信息&#xff0c;它负责启动并运行应用。实例化 SpringApplication 时&#xff0c;会自动装载META-INF/spr…

Linux文件chattr/lsattr/Linux权限(搭建权限测试环境实战)引申到内部原理及Linux删除系统文件原理-7539字详谈

企业高薪思维: 每一个阶段什么时候是最重要的&#xff1f;&#xff08;快速定位&#xff09; 1.学习最重要的事情 &#xff08;学生阶段&#xff0c;找工作前阶段&#xff09; 2.家庭&#xff0c;女朋友 &#xff08;工作阶段/学生阶段&#xff0c;学习不受到影响&#xff09; …

修改Ubuntu22.04系统图标

在Ubuntu 22.04中更改开机时显示的Ubuntu图标需要修改的设置。 主要思路是用自己图片替换系统图片&#xff0c;保持系统图片同名&#xff0c;同格式。 以下是一般的步骤&#xff1a; 修改启动界面的logo&#xff1a; sudo cp 新logo.png /usr/share/plymouth/themes/spinn…

@NameBinding注解名称绑定过滤器/拦截器

NameBinding注解名称绑定过滤器/拦截器&#xff0c;只针对某一些资源方法执行处理逻辑 一、为什么要用名称绑定 一般情况下&#xff0c;借助Spring的过滤器或者拦截器等对Http请求或响应进行处理就能满足需求。但是在有些场景下若只需对特定的xxxResource做拦截处理&#xff0…

项目大集成

一 keeplived 高可用 192.168.11.11nginx keeplived192.168.11.12nginx keeplived 两台均编译安装服务器 1 主服务器修改文件&#xff1a; 2 备服务器修改文本 scp keepalived.conf 192.168.11.12:/etc/keepalived/ 3 给主服务器添加虚拟ip ifconfig ens33:0 192.168…

【多态】底层原理

博主首页&#xff1a; 有趣的中国人 专栏首页&#xff1a; C进阶 本篇文章主要讲解 多态底层原理 的相关内容 1. 多态原理 1.1 虚函数表 先看一下这段代码&#xff0c;计算一下sizeof(Base)是多少&#xff1a; class Base { public:virtual void Func1(){cout << &quo…

Oracle 21 C 安装详细操作手册,并配置客户端连接

Oracle 21 C 安装详细操作手册 Win 11 Oracle 21C 下载&#xff1a; Database Software Downloads | Oracle 中国 云盘共享 链接&#xff1a;https://pan.baidu.com/s/12XCilnFYyLFnSVoU_ShaSA 提取码&#xff1a;nfwc Oracle 21C 配置与登陆&#xff1a; 开始菜单 NetMa…

Git下载安装

天行健&#xff0c;君子以自强不息&#xff1b;地势坤&#xff0c;君子以厚德载物。 每个人都有惰性&#xff0c;但不断学习是好好生活的根本&#xff0c;共勉&#xff01; 文章均为学习整理笔记&#xff0c;分享记录为主&#xff0c;如有错误请指正&#xff0c;共同学习进步。…

华为认证云计算前景如何

互联网/移动互联网经历了高速发展的二十年&#xff0c;我们有幸一起见证了华为、阿里、腾讯、百度、字节跳动、京东、滴滴、拼多多等互联网公司的崛起&#xff0c;让普通技术人实现逆袭拿到高薪&#xff0c;也让小镇做题家们有了阶层跨越的机会。 但机会都是留给有准备的人&…

C++:特殊成员函数

构造函数、析构函数和拷贝构造函数是C类中的三种特殊成员函数&#xff0c;它们分别用于对象的初始化、清理和拷贝操作。 1.构造函数&#xff08;Constructor&#xff09;&#xff1a;构造函数在对象创建时自动调用&#xff0c;用于初始化对象的成员变量。它的名称与类名相同&a…

React Router 6 + Ant Design:构建基于角色的动态路由和菜单

要根据用户的角色生成不同的路由菜单并实现权限控制,你可以采取以下步骤: 定义路由配置 首先,你需要定义一个包含所有可能路由的配置文件,例如: const routes [{path: /dashboard,element: <DashboardPage />,roles: [admin, manager, user]},{path: /users,element:…

Node.js 基础学习

文章目录 1. Node.js1.1 是什么&#xff1f;1.2 作用 2. 命令行工具2.1 命令的结构2.2 常用命令 3. Node.js 注意点3.1 Node.js 中不能使用DOM 和BOM 的API3.2 Node.js 中顶级对象叫做global 4. Buffer4.1 Buffer 特点4.2 Buffer 创建方式4.3 Buffer 操作与注意点 5. 计算机基础…

CSS基础:浮动(float)的3种方式,清除浮动3种方式的详解

你好&#xff0c;我是云桃桃。 一个希望帮助更多朋友快速入门 WEB 前端的程序媛。 云桃桃-大专生&#xff0c;一枚程序媛&#xff0c;感谢关注。回复 “前端基础题”&#xff0c;可免费获得前端基础 100 题汇总&#xff0c;回复 “前端工具”&#xff0c;可获取 Web 开发工具合…

【报错】ModuleNotFoundError: No module named ‘einops‘

1 报错 💔💔💔 ModuleNotFoundError: No module named einops 解决方法 💚 💚 💚 pip --default-timeout=100 install einops -i https://pypi.tuna.tsinghua.edu.cn/simple 问题解决啦!!!🌺🌺🌺 2 报错 💔💔💔 ModuleNotFoundError: No module

iOS OC项目中引入SwiftUI文件

iOS OC项目中引入SwiftUI文件 1、创建SwiftUI文件 2、第一次创建时&#xff0c;Xcode会提示桥接&#xff0c;选择 Creat Bridging Header即可。 3、创建swift管理类 /**在UIKit中使用SwiftUI&#xff0c;需要使用UIHostingController对SwiftUI进行包装&#xff0c;返回的是U…