JavaScript入门分享

news2024/12/22 19:09:59

文章目录

  • 一、JavaScript简介
  • 二、第一个JavaScript案例
  • 三、在浏览器中执行JavaScript代码
  • 四、JavaScript的输出方法
  • 五、JavaScript的语法
  • 六、JavaScript的数据类型
  • 七、JavaScript的定义变量/函数
  • 八、热门文章

一、JavaScript简介

JavaScript是一种高级编程语言,用于在网页上实现交互和动态性。它是一种面向对象的语言,具有类似于C语言的语法和功能。

JavaScript最初是为了在网页上添加简单的交互功能而创建的,但随着时间的推移,它已经发展成为一种功能强大且广泛使用的语言。它可以用于开发前端和后端应用程序,并且可以在不同的平台和设备上运行。

JavaScript有许多特性和功能,其中一些是:

  1. 语法简洁:JavaScript的语法类似于C语言,易于学习和理解。
  2. 动态类型:JavaScript是一种动态类型语言,不需要明确声明变量的类型,变量的类型可以根据赋值自动推断。
  3. 对象和原型继承:JavaScript使用原型继承,允许对象继承另一个对象的属性和方法。
  4. 弱类型:JavaScript具有松散的类型转换,变量可以自动转换为另一种类型。
  5. 事件驱动编程:JavaScript可以通过事件处理程序对用户的交互做出反应,例如点击按钮、鼠标移动等。
  6. 异步编程:JavaScript支持异步编程模型,可以实现非阻塞的操作,提高程序的响应性能。
  7. 客户端和服务器端开发:JavaScript不仅可以在浏览器中运行,还可以通过Node.js在服务器端运行。

JavaScript可以通过内联方式嵌入在HTML页面中,也可以作为外部文件引用。它可以用于处理表单验证、动态内容更新、动画效果、数据请求等各种任务。

JavaScript是一种功能强大且灵活的编程语言,用于为网页添加交互和动态性,并且已经成为Web开发的基础之一。

二、第一个JavaScript案例

<!DOCTYPE html>
<html>
<body>
<script>
document.write("<h1>我的第一个JavaScript案例</h1>");
document.write("<p>JavaScript案例描述</p>");
</script>
</body>
</html>

新建一个html文件,用<script></script>包裹JavaScript的代码,document.write 是 JavaScript 中用于向 HTML 输出内容的方法。它允许你直接向浏览器输出 HTML、文本或其他 JavaScript 代码。

三、在浏览器中执行JavaScript代码

在浏览器中可以通过按下 F12 按钮或者右击页面,选择"检查"来开启开发者工具

在这里插入图片描述

在开发者工具中,用var定义变量aa,用console.log输出。

四、JavaScript的输出方法

JavaScript有多种输出方法,以下是其中一些常用的方法及案例代码:

  1. 使用console.log()方法输出到浏览器控制台:
   console.log("Hello, World!");

运行上述代码,会在浏览器的控制台中输出 “Hello, World!”。

  1. 使用alert()方法弹出一个警告框:
   alert("Hello, World!");

运行上述代码,会在浏览器中弹出一个警告框,其中显示 “Hello, World!”。

  1. 使用document.write()方法直接输出到HTML文档:
   document.write("Hello, World!");

运行上述代码,会将 “Hello, World!” 直接写入到HTML文档中。

  1. 使用innerHTML属性将内容插入到HTML元素中:
   <p id="myElement"></p>
   var element = document.getElementById("myElement");
   element.innerHTML = "Hello, World!";

运行上述代码,会将 “Hello, World!” 插入到具有id为 “myElement” 的

元素中。

这些方法都可以用来输出文本、字符串、数字或HTML代码到浏览器,具体使用哪种方法取决于你的需求和应用场景。

五、JavaScript的语法

JavaScript的语法比较灵活,以下是一些常用的语法规则及案例代码:

  1. 声明变量:
   var name = "John";
   let age = 25;
   const PI = 3.14;

上述代码分别使用var、let和const关键字声明了三个变量。var关键字声明的变量是函数作用域的,而let和const关键字声明的变量是块级作用域的。

  1. 数据类型:
   let name = "John"; // 字符串
   let age = 25; // 数字
   let isStudent = true; // 布尔值
   let myList = [1, 2, 3]; // 数组
   let myObject = { name: "John", age: 25 }; // 对象
   let myFunction = function() { // 函数
     console.log("Hello, World!");
   };

JavaScript支持多种数据类型,包括字符串、数字、布尔值、数组、对象和函数。

  1. 条件语句:
   let age = 18;
   if (age < 18) {
     console.log("You're underage.");
   } else if (age >= 18 && age < 65) {
     console.log("You're an adult.");
   } else {
     console.log("You're a senior citizen.");
   }

上述代码使用if-else语句判断年龄,并根据不同的情况输出不同的结果。

  1. 循环语句:
   for (let i = 0; i < 5; i++) {
     console.log(i);
   }

   let fruits = ["Apple", "Banana", "Orange"];
   for (let fruit of fruits) {
     console.log(fruit);
   }

第一个代码块使用for循环输出0到4的数字,而第二个代码块使用for…of循环遍历数组中的元素并输出。

  1. 函数:
   function greet(name) {
     console.log("Hello, " + name + "!");
   }

   greet("John");

上述代码定义了一个名为greet的函数,接受一个参数name,并在控制台输出问候语。

这些只是JavaScript语法的一部分,每个案例代码都可以用来演示不同的语法特性和功能。请根据自己的需求学习和使用适合的语法规则。

六、JavaScript的数据类型

JavaScript中有七种基本的数据类型,分别是:

  1. 字符串(String):表示文本数据,用引号(单引号或双引号)包裹起来。
   let name = "John";
  1. 数字(Number):表示数值数据,包括整数和浮点数。
   let age = 25;
  1. 布尔值(Boolean):表示逻辑值,只有两个值:true(真)和false(假)。
   let isStudent = true;
  1. 数组(Array):表示一组有序的值,每个值可以是任意类型。
   let numbers = [1, 2, 3, 4, 5];
  1. 对象(Object):表示一组无序的键值对。
   let person = {
     name: "John",
     age: 25,
     isStudent: true
   };
  1. 空(Null):表示一个空值。
   let myVariable = null;
  1. 未定义(Undefined):表示变量没有被赋予一个定义的值。

    let myVariable;
    

下面是一些使用不同数据类型的案例代码:

let name = "John";
let age = 25;
let isStudent = true;
let numbers = [1, 2, 3, 4, 5];
let person = {
  name: "John",
  age: 25,
  isStudent: true
};
let myVariable = null;
let myUndefinedVariable;

console.log(name);
console.log(age);
console.log(isStudent);
console.log(numbers);
console.log(person);
console.log(myVariable);
console.log(myUndefinedVariable);

上述代码分别声明了不同类型的变量,并通过console.log()方法将它们输出到控制台。你可以根据需要修改或扩展这些示例代码。

七、JavaScript的定义变量/函数

在JavaScript中,可以使用关键字varletconst来定义变量和函数。

  • 使用var关键字定义变量会将其提升到其作用域的顶部,变量的作用域可以是全局或局部。它可以被重新赋值。
  var x = 5;
  console.log(x); // 输出 5
  • 使用let关键字定义变量具有块级作用域,并且它的值可以被修改。
  let y = 10;
  console.log(y); // 输出 10
  y = 15;
  console.log(y); // 输出 15
  • 使用const关键字定义常量,它的值是恒定不变的,不能被重新赋值。
  const z = 20;
  console.log(z); // 输出 20
  z = 25; // 抛出错误,常量不能被重新赋值
  • 使用function关键字定义函数,可以使用函数表达式或函数声明。

使用函数表达式的示例:

  let add = function(a, b) {
    return a + b;
  };

  console.log(add(2, 3)); // 输出 5

使用函数声明的示例:

  function multiply(a, b) {
    return a * b;
  }

  console.log(multiply(2, 3)); // 输出 6

注意,函数声明在变量声明之前就可以使用,而函数表达式必须在其后面定义才能使用。

以上是JavaScript中定义变量和函数的示例代码。请根据需求进行修改和扩展。

八、热门文章

【温故而知新】JavaScript数字精度丢失问题
【温故而知新】JavaScript的继承方式有那些
【温故而知新】JavaScript中内存泄露有那几种
【温故而知新】JavaScript函数式编程
【温故而知新】JavaScript的防抖与节流
【温故而知新】JavaScript事件循环

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

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

相关文章

esxi配置NTP自动对时与手动对时

目录 背景解法配置NTP服务器立即与NTP服务器同步时间 附&#xff1a;几个常用的NTP服务器列表 背景 VMware ESXi 6.7运行了一段时间后偶然发现系统时间与标准时间有5分钟左右的差异&#xff0c;于是研究了下如何自动对时以及用命令行立即对时。 解法 配置NTP服务器 首先在管…

手把手教你使用MDK仿真调试

当今的嵌入式系统开发领域中&#xff0c;高效的调试工具对于工程师来说至关重要。它们能够极大地减少开发周期中的错误追踪时间&#xff0c;并加速产品的上市时间。MDK作为业界领先的嵌入式开发工具之一&#xff0c;其内置的调试功能被广大开发者所赞誉。这些功能不仅提供了对代…

PostgreSQL 是不是大小写敏感

如果你踩过 MySQL 的大坑的话就知道&#xff1a;MySQL 在 Windows 下不区分大小写&#xff0c;但在 Linux 下默认是区分大小写。 如果你稍加不注意就会出现在本机开发的程序运行一切正常&#xff0c;发布到服务器行就出现表名找不到的问题。 这是我们前一个项目遇到的巨大问题…

Python中函数的参数有哪些?

目录 ①必选参数 ②默认参数 ③可变参数 ④关键字参数 ⑤命名关键字参数 学习python函数部分的时候&#xff0c;发现除了正常定义的必选参数外&#xff0c;还使用默认参数、可变参数、关键字参数和命名关键字参数&#xff0c;在这里理清楚这些参数具体是怎么回事吧&#x…

nvm 配置淘宝镜像失效,以及安装node后 npm-v 无效

win11 nvm版本 1.1.4 和1.1.7和1.1.12&#xff08;目前最新版本24年 一月二十三日&#xff09; 以上nvm版本都会出现一下问题&#xff0c; 从https://github.com/coreybutler/nvm-windows/releases 下载nvm安装包如下图 傻瓜式安装后&#xff0c;不用去配置环境变量&#…

动态IP代理与静态IP代理:详细区别与比较全析

动态代理IP和静态代理IP在跨境业务中具有非常广泛的实用性&#xff0c;但仍然有非常多小白选手并不清楚什么场景适合用哪一类IP&#xff0c;哪一中代理IP类型更适合你&#xff1f;其实他们各有其优点和缺点&#xff0c;为了使您的网络营销、社媒推广、跨境电商运营、网络抓取尽…

C#用DateTime.DaysInMonth(Int32, Int32) 获取指定月的天数

目录 一、DateTime.DaysInMonth(Int32, Int32) 方法 二、实例 1.实例1 2.实例2 3.方法3 一、DateTime.DaysInMonth(Int32, Int32) 方法 返回指定年和月中的天数。 public static int DaysInMonth (int year, int month);参数 year Int32 年。month Int32 月&#…

「JavaSE」抽象类接口2

&#x1f387;个人主页&#xff1a;Ice_Sugar_7 &#x1f387;所属专栏&#xff1a;快来卷Java啦 &#x1f387;欢迎点赞收藏加关注哦&#xff01; 抽象类&接口2 &#x1f349;接口间的继承&#x1f349;接口的应用&#x1f349;总结 &#x1f349;接口间的继承 和类的继承…

Java--异常处理

文章目录 主要内容一.练习11.源代码代码如下&#xff08;示例&#xff09;: 2.结果 二.练习21.源代码代码如下&#xff08;示例&#xff09;: 2.结果 三.练习31.源代码代码如下&#xff08;示例&#xff09;: 2.结果 总结 主要内容 一.练习1 编写程序&#xff0c;定义一个 cir…

FRRouting学习(一) 配置日志文件

以配置isis event事件日志为例 1、在配置之前&#xff0c;/var/log/frr路径下是没有文件的&#xff1a; 2、在vtysh config之下输入&#xff1a;log file /var/log/frr/isisd.log debugging 后面的debugging表示日志级别&#xff0c;可以根据自己修改 3、配置好了之后&#xf…

力扣hot100 两两交换链表中的节点 双指针

Problem: 24. 两两交换链表中的节点 复杂度 时间复杂度: O ( n ) O(n) O(n) 空间复杂度: O ( 1 ) O(1) O(1) Code /*** Definition for singly-linked list.* public class ListNode {* int val;* ListNode next;* ListNode() {}* ListNode(int val) { …

力扣hot100 环形链表 快慢指针 哈希 数学公式

Problem: 142. 环形链表 II 文章目录 思路Code 思路 &#x1f468;‍&#x1f3eb; 参考题解 Code ⏰ 时间复杂度: O ( n ) O(n) O(n) &#x1f30e; 空间复杂度: O ( 1 ) O(1) O(1) /** /*** Definition for singly-linked list.* class ListNode {* int val;* …

微信小程序如何做到高效引流?-数灵通

随着微信小程序制作门槛的降低&#xff0c;大量的小程序如雨后春笋般涌现&#xff0c;其中小程序商城类型尤为众多。然而&#xff0c;由于微信自身的流量有限&#xff0c;对于大多数小程序商城而言&#xff0c;获取足够的流量成为了一大挑战。 针对这一问题&#xff0c;我们可以…

如何在Windows 10/11中设置IPv4?这里有详细步骤

在Windows上&#xff0c;路由器的动态主机配置协议&#xff08;DHCP&#xff09;服务器&#xff08;通常&#xff09;负责将动态传输控制协议/互联网协议&#xff08;TCP/IP&#xff09;配置分配给网络中的每个设备&#xff0c;包括运行Windows 11或Windows 10的计算机。 尽管…

链表OJ----相交链表找交点

https://leetcode.cn/problems/intersection-of-two-linked-lists/description/ 1、长链表先走&#xff0c;然后二者一起走 由于两个链表可能不一样&#xff0c;就不好控制移动。那么我们可以让长的链表先走二者的长度差的长度&#xff0c;使剩下部分和短链表一样长。然后二者一…

操作无法完成,因为文件已在Windows资源管理器中打开,如何解决?以及如何将哔哩哔哩下载好的视频导出到电脑中播放?— 以vivo手机为例

前言 想删除流氓软件的时候&#xff0c;提示操作无法完成&#xff0c;因为文件已在Windows资源管理器中打开&#xff0c;但打开任务管理器&#xff0c;似乎又没有符合的正在执行的程序&#xff0c;更别说打开让人看到头疼的资源监视器了&#xff0c;本文将用一招解决如上问题 …

【RF FILTER 仿真】滤波器 Ansys Electronics not ADS

第一&#xff0c;声明 全网搜索&#xff0c;用这个HFSS继承的介绍非常少&#xff0c;并且没有什么指导意义。所以有必要写一下&#xff0c;就像之前的xpedition,总要挑战一下吧。本文仅仅和大家学习研究&#xff0c;对比ADS体会一下差别。 第二&#xff0c;记录直接开始&…

微信小程序如何解决botton按钮对齐问题

如果botton不在其他控件下层&#xff0c;或者上层控件类型不为flex&#xff0c;可以用float调整botton显示位置&#xff0c;如floatright&#xff0c;则botton显示在右侧。 <button type"primary" style"float: right;">测试</button><vie…

什么是JMeter?我们为什么要用JMeter做性能测试

什么是JMeter&#xff1f;我们为什么要用JMeter做性能测试 什么是JMeter&#xff1f;为什么选择JMeterJMeter的优点JMeter是如何工作的 什么是JMeter&#xff1f; Apache JMeter TM是纯Java开源软件&#xff0c;最初由Apache软件基金会的Stefano Mazzocchi开发&#xff0c;旨在…

运维神器Ansible的常用模块

引言&#xff1a;话不多说&#xff0c;今天分享一下Ansible的常用模块&#xff0c;建议收藏哦 1、ping模块 ping模块可以进行主机连通性测试 命令格式 ansible 主机或主机组 -m ping 例&#xff0c;成功显示如下&#xff1a; 2、command 模块 command模块可以直接在远程主机…