JavaScript学习-1

news2025/1/21 4:51:50

01 基础用法

//index.html
<body>
	<!-- 行内JS  -->
    <button type="button" onclick="alert('hello')">按钮</button>
    
    <!--内部JS-->
    <script type="text/javascript">
        alert("你好");
    </script>
    
    <!--引入外部js文件 -->
    <script src="js/test.js" type="text/javascript" charset="utf-8"></script>
 </body>


//test.js
console.log("你好");

02 语句和注释

  1.js代码以行为单位,从上往下一行一行执行。一行就是一个语句。
        2.语句以分号结尾,一个分号就表示语句的结束。
        3.多个语句写在一行,每个语句结尾必须加上分号。
        
        注释:
        html代码中
            兼容html风格的注释<!---->
        js代码中
            //单行注释
            /*多行注释*/
   标识符和关键字
        标识符就是一个名字,用来给变量和函数进行命名,有特定规则和规范
        规则:由Unicode字母、_、$、数字组成、中午组成
            (1)不能以数字开头
            (2)不能是关键字和保留字
            (3)严格区分大小写
        规范:
            (1)见名知意
            (2)驼峰命名和下划线规则
         关键字也称保留字。是被JavaScript征用来有特殊含义的单词

03 变量

<body>
  <!--
        变量:JS是一种弱类型语言,在声明变量时不需要指定数据类型,直接使用var修饰符声明变量。
        变量的声明:
            1.声明并赋值
            2.先声明再赋值
        变量的注意点:
            1.当变量只声明未赋值时,变量的值返回undfinded
          2.变量要有定义才能使用,若变量未声明就使用,JavaScript会报错,告诉你变量未定义。
            3.可以在同一条var命令中声明多个变量。
            4.若使用var重新声明一个已经存在的变量,是无效的。
            5.若使用var重新声明一个已经存在的变量且赋值,会覆盖掉前面的值。
            6.JavaScript是一种动态类型、弱类型语言,也就是说,变量的类型没有限制。可以赋予各种类型的值
    -->
    <script type="text/javascript">
     // 变量的声明:
        // 1.声明并赋值
        var str = "Hello World";
        console.log(str);
        // 2.先声明再赋值
        var str2;//声明
        str2 = "Hello";//赋值

     // 变量的注意点:
      // 1.当变量只声明未赋值时,变量的值返回undfinded
        var a;
        console.log(a);
        // 2.变量要有定义才能使用,若变量未声明就使用,JavaScript会报错,告诉你变量未定义。
        console.log(b);
        // 3.可以在同一条var命令中声明多个变量。
        var aa=2,bb=5,cc=10;
        console.log(aa,bb,cc);
        // 4.若使用var重新声明一个已经存在的变量,是无效的。
        var str;
        console.log(str);
        // 5.若使用var重新声明一个已经存在的变量且赋值,会覆盖掉前面的值。
        // 6.JavaScript是一种动态类型、弱类型语言,也就是说,变量的类型没有限制。可以赋予各种类型的值
         var flag = true;
         console.log(true);
    </script>
</body>

04 数据类型

  • Undefined
    1.当声明了变量但未赋值时,这个变量的值就是undefined
    2.调用函数(方法)时,函数有形参,但未提供实参,则实参未undefined
    3.函数没有返回值,默认返回undefined

  • null 表示空值。使用Null类型值时注意以下几点:
    1.使用typeof操作符测试null返回object字符串
    2.undefined派生自null,所以等值比较返回值是true。未初始化的变量和赋值为null的变量相等。

  • 布尔类型(Boolean)
    true或false

  • 数值型(Number)
    整行和浮点型
    1.所有数字(整型和浮点型)都是以64位浮点类型存储的。所以再js中,1=1.0 1+1.0=2
    2.浮点类型最高精度是17位,浮点类型运算时可能不准确,不建议使用浮点型做判断
    3.在存储数值时会自动将整型的浮点数值(1.0)转换成整型(1)

  • 字符串
    使用“”或’'引起来,如:“hello”,‘good’。

  • 对象(object) (引用):各种值组成的集合
    1.对象(object)
    2.数组(array)
    3.函数(function)

 // Undefined
    // 1.当声明了变量但未赋值时,这个变量的值就是undefined
    var str;
    console.log(str);
    // 2.调用函数(方法)时,函数有形参,但未提供实参,则实参未undefined
    function test(str){
        console.log(str);
    }
    test();
    // 3.函数没有返回值,默认返回undefined
    var t = test(1);
    console.log(t);

在这里插入图片描述

null
表示空值。使用Null类型值时注意以下几点:
1.使用typeof操作符测试null返回object字符串
2.undefined派生自null,所以等值比较返回值是true。未初始化的变量和赋值为null的变量相等。

 /* null */
    var a = 1;
    var b = true;
    console.log(typeof a);//number
    console.log(typeof b);//boolean

    //1.使用typeof操作符测试null返回object字符串
    var c = null;
    console.log(null);
    console.log(typeof null);//object

    //2.undefined派生自null,所以等值比较返回值是true。未初始化的变量和赋值为null的变量相等。
    var d;
    console.log(d);
    console.log(c == d);

在这里插入图片描述

// 数值型(Number)
  //  整行和浮点型
    // 1.所有数字(整型和浮点型)都是以64位浮点类型存储的。所以再js中,1=1.0  1+1.0=2
    console.log(1==1.0);//true
    console.log(1+1.0)//2
    //3.在存储数值时会自动将整型的浮点数值(1.0)转换成整型(1)
    var s = 1.0;
    console.log(s);

在这里插入图片描述

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

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

相关文章

Unity C++交互

一、设置Dll输出。 两种方式&#xff1a; 第一&#xff1a;直接创建动态链接库工程第二&#xff1a;创建的是可执行程序&#xff0c;在visual studio&#xff0c;右键项目->属性(由exe改成dll) 二、生成Dll 根据选项Release或Debug&#xff0c;运行完上面的生成解决方案后…

计网Lesson6 - IP 地址分类管理

文章目录 1. I P IP IP 地址定义2. I P v 4 IPv4 IPv4 的表示方法2.1 I P v 4 IPv4 IPv4 的分类编址法2.2 I P v 4 IPv4 IPv4 的划分子网法2.2.1 如何划分子网2.2.2 如何确定子网的借位数2.2.3 总结2.2.4 题目练习 2.3 I P v 4 IPv4 IPv4 的无分类编址法 1. I P IP IP 地…

kafka3.6.0部署

部署zk https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.9.1/apache-zookeeper-3.9.1.tar.gz tar -xf apache-zookeeper-3.9.1.tar.gz -C /apps cd /apps/ && ln -s apache-zookeeper-3.9.1 zookeeper 修改配置bash grep -vE ^$|^# conf/zo…

代码随想录算法训练营第四十一天 _ 动态规划_343. 整数拆分、96.不同的二叉搜索树、01背包问题。

学习目标&#xff1a; 动态规划五部曲&#xff1a; ① 确定dp[i]的含义 ② 求递推公式 ③ dp数组如何初始化 ④ 确定遍历顺序 ⑤ 打印递归数组 ---- 调试 引用自代码随想录&#xff01; 60天训练营打卡计划&#xff01; 学习内容&#xff1a; 343. 整数拆分 动态规划五步曲&…

【接口测试】Apifox实用技巧干货分享

前言 不知道有多少人和我有着这样相似的经历&#xff1a;从写程序只要不报错就不测试&#x1f60a;&#xff0c;到写了程序若是有bug就debug甚至写单元测试&#xff0c;然后到了真实开发场景&#xff0c;大哥和你说&#xff0c;你负责的功能模块的所有接口写完要测试一遍无误在…

python——进程常用功能

Python的multiprocessing模块提供了强大的并行处理能力&#xff0c;以下是几个功能的详细解释&#xff1a; join(): 在multiprocessing中&#xff0c;join方法用于阻塞主进程直到指定的进程终止。这对于确保所有子进程在程序结束前完成其工作是很有用的。deamon(): 在multipro…

16.字符串处理函数——字符串长度函数

文章目录 前言一、题目描述 二、解题 程序运行代码 总结 前言 本系列为字符串处理函数编程题&#xff0c;点滴成长&#xff0c;一起逆袭。 一、题目描述 二、解题 程序运行代码 #include<stdio.h> #include<string.h> int main() {char str[ ]"0123\0456…

根据关键词写作文章的软件,根据标题写作文章的工具

在当今信息化时代&#xff0c;人工智能技术的飞速发展&#xff0c;智能AI写作工具逐渐成为文案创作者的得力助手。这些工具不仅能够根据标题迅速生成文章&#xff0c;而且在提高创作效率的同时&#xff0c;也为我们节省了大量时间和精力。 人工智能的基本原理&#xff1a;人工智…

如何查看Microsoft Office 使用期限

1.进入到 Office 软件的安装目录&#xff08;******\Microsoft Office\Office&#xff09; ## 以管理员身份打开 Windows PowerShell输入以下命令&#xff0c;回车 cscript ospp.vbs /dstatusREMAINING GRACE 一行表示激活剩余天数&#xff08;括号内是换算成的剩余分钟数…

15.字符串处理函数——字符串连接函数

文章目录 前言一、题目描述 二、解题 程序运行代码 总结 前言 本系列为字符串处理函数编程题&#xff0c;点滴成长&#xff0c;一起逆袭。 一、题目描述 二、解题 程序运行代码 #include<stdio.h> #include<string.h> int main() {char dest[20] "12345…

【Linux】第二十五站:深入理解文件系统

文章目录 一、前言二、认识硬件----磁盘1.基本介绍2.磁盘的存储构成3.磁盘的逻辑结构4.回归到硬件 三、文件系统1.划分2.Block group(1)Data blocks(2)inode Table(3)Block Bitmap(4)inode Bitmap(5)Group Descriptor Table(GDT)(6)Super Block 3.总结4.一些其他问题5.如何理解…

音视频的功耗优化

前言 在应用中&#xff0c;录制与音视频模块往往是高耗能的模块&#xff0c;设备容易发热&#xff0c;影响体验。 什么是功耗优化 手机有多个耗电模块&#xff0c; SOC(CPU&#xff0c;GPU&#xff0c;DDR)&#xff0c;Display&#xff0c;Audio&#xff0c;Video&#xff0…

loguru的简单使用

详细使用&#xff1a;Table of contents — loguru documentation 【1】日志的级别 日志级别默认分为6种 1、NOTSET (0)2、DEBUG (1)3、INFO (2)4、WARNING (3)5、ERROR (4)6、CRITICAL (5) logging 执行时输出大于等于设置的日志级别的日志信息&#xff0c;如设置日…

zemax之初级像差理论与像差校正——慧差

通过上节介绍&#xff0c;我们已经知道在轴上视场产生的球差是旋转对称的像差。在进行光学系统设计时&#xff0c;同时需要保证轴上物点和轴外物点的成像质量。轴外物点成像时会引入轴外像差&#xff0c;即轴外视场产生的慧差&#xff08;coma aberration&#xff09; 1.慧差概…

STM32-SPI 中断

SPI协议 1.1 SPI总线介绍 SPI接口是Motorola &#xff08;motorola | Smartphones, Accessories & Smart Home Devices&#xff09;首先提出的全双工三线/四线同步串行外围接口采用主从模式&#xff08;Master Slave&#xff09;架构。 时钟由Master控制&#xff0c;在时钟…

采购业务中的主数据

目录 一、维护BP主数据业务伙伴BP的概念业务伙伴涉及的表业务伙伴维护操作一次性客商数据 二、维护物料主数据三、维护采购信息记录四、与FI相关集成点物料主数据的价格控制评估类与科目确定 一、维护BP主数据 业务伙伴BP的概念 在S/4HANA中&#xff0c;SAP引入了BP(Business…

【最通用版FPGA 实现 SPI 驱动】

最近研究了一下SPI协议的FPGA实现&#xff0c;发现网上很多大佬分享的方法都是针对某一特定的flash芯片或者某一传感器芯片来设计电路结构的。所以想根据SPI&#xff08;Serial Peripheral Interface&#xff09;的基本通讯协议实现一个通用版的SPI Master驱动。SPI在嵌入式领域…

详解Spring中基于注解的Aop编程以及Spring对于JDK和CGLIB代理方式的切换

&#x1f609;&#x1f609; 学习交流群&#xff1a; ✅✅1&#xff1a;这是孙哥suns给大家的福利&#xff01; ✨✨2&#xff1a;我们免费分享Netty、Dubbo、k8s、Mybatis、Spring...应用和源码级别的视频资料 &#x1f96d;&#x1f96d;3&#xff1a;QQ群&#xff1a;583783…

TinyVue 组件库助力赛意信息获得工业软件种子奖

首先恭喜广州赛意信息科技股份有限公司荣获工业软件种子奖&#xff01;在本次大赛中&#xff0c;凭借“数据驱动智造&#xff0c;基于 iDME 的赛意新一代 SMOM 赋能电子行业制造运营管理解决方案”这一作品脱颖而出~ 大赛简介 10月30日至10月31日&#xff0c;由广东省工业和信…

Tomcat外传

作者简介&#xff1a;大家好&#xff0c;我是smart哥&#xff0c;前中兴通讯、美团架构师&#xff0c;现某互联网公司CTO 联系qq&#xff1a;184480602&#xff0c;加我进群&#xff0c;大家一起学习&#xff0c;一起进步&#xff0c;一起对抗互联网寒冬 本篇开始&#xff0c;我…