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

JavaScript-HelloWorld、浏览器控制台使用、数据类型

1.基本使用及HelloWorld

在网页上显示HelloWorld

<script> 
    //在这个标签内写javascript代码
<script>

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script>
        alert("hello world");
    </script>
</head>
<body>
</body>
</html>

规范书写方式,样式分离:

新建js文件夹,存放js样式

js代码:

alert("hello world");

外部引入:

注意:script标签必须成对出现
           别写成<script/>的形式,容易出BUG

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
<!--    <script>-->
<!--        alert("hello world");-->
<!--    </script>-->
    <script src="js/first.js"></script>

    <!--不用显示定义type,也默认就是javaScript-->
    <script type="text/javascript"></script>
</head>
<body>
</body>
</html>

2.浏览器控制台使用

严格检查格式:

测试代码:

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
<!--    javascript严格区分大小写-->
    <script>
        // 1.定义变量  (可以按照Java的代码规范)
        var num = 1;
        //alert(num);
        // 2. 条件控制
        var score = 80;
        if (score >= 60 && score < 70) {
            alert("成绩合格");
        } else if (score >= 70 && score < 80) {
            alert("成绩良好");
        } else if (score >= 80 && score < 90) {
            alert("成绩优秀");
        } else if (score >= 80 && score < 90) {
            alert("成绩非常优秀");
        } else {
            alert("成绩不合格");
        }
        //console.log(score) 在浏览器的控制台打印变量
    </script>
</head>
<body>

</body>
</html>

浏览器的console处可直接敲js代码

常用的几个调试:

3.数据类型快速浏览

3.1 基础知识快速浏览

数值,文本,图形,音频,视频 等

1)number
js不区分小数和整数,统一用 Number 表示

123//整数123
123.1//浮点数123.1
1.123e3//科学计数法
-99//负数
NaN    //not a number
Infinity // 表示无限大

2)字符串
‘abc’ 、“abc”

3)布尔值
true,false

 

4)逻辑运算 

&& 两个都为真,结果为真

|| 一个为真,结果为真

!     真即假,假即真

5)比较运算符 

=  赋值
1,"1"
== 等于(类型不一样,值一样,也会判断为true)
=== 绝对等于(类型一样,值一样,结果为true)

这是一个JS的缺陷,坚持不要使用 == 比较
须知:

  • NaN === NaN,返回 false。这个 NaN 与所有的数值都不相等,包括自己
  • 只能通过 isNaN(NaN) 来判断这个数是否是 NaN

6)浮点数问题

 尽量避免使用浮点数进行运算,存在精度问题!
一般用 |a-b| < 某个精确度,来表示 a=b

7)null 和 undefined

  • null 空
  • undefined 未定义

8)数组
Java的数组必须是相同类型的对象~,JS中不需要这样

3.2 字符串

1、正常字符串我们使用 单引号,或者双引号包裹
2、注意转义字符 \

\'
\n  回车
\t table
\u ----> Unicode字符
\x ----> Ascall字符

3.3 多行字符串编写

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script>
        //`是 tab键 上面 esc 键下面那个按键
        var msg=`hello
                 world
                 biubiu
                 hihi~`
    </script>
</head>
<body>

</body>
</html>

3.4 模板字符串

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script>
        //`是 tab键 上面 esc 键下面那个按键
        let name="biubiu";
        let age = 3;
        let msg = `你好呀,${name}`
    </script>
</head>
<body>

</body>
</html>

3.5 字符串长度

string.length

取指定下标的字符:

字符串的可变性:不可变

3.7 大小写转换

注意这里是方法不是属性

3.8 indexOf

获取指定的下标

3.9 subString

从0开始,左闭右开:

student.substring(1)//从第一个字符串截取到最后一个字符串

相关文章:

  • Centos部署Docker
  • 视频剪辑教程自学技巧:关于正确的短视频剪辑流程分享
  • 30、三维表面重建-Convolutional Occupancy Network
  • Android 用户如何将Room根据不同账户动态分库方案
  • 539、RabbitMQ详细入门教程系列 -【100%消息投递消费(一)】 2022.08.31
  • 基于信贷业务的量化风险评估简述
  • 项目经理如何做好任务分解,制定项目计划
  • 高级JAVA面试题详解(一)——CurrentHashMap、HashMap、HashTable的区别
  • Dart 2.18 发布,Objective-C 和 Swift interop
  • learn threejs (最小化例子)
  • Flask学习(四)-------蓝图
  • 牛客多校2 - Ancestor(LCA,前后缀)
  • 【毕业设计】深度学习垃圾分类系统 - 机器视觉
  • Linux 编写shell脚本记录操作用户日志信息
  • 从零开始配置vim(19)——终端配置
  • Create React App 使用
  • extjs4学习之配置
  • GitUp, 你不可错过的秀外慧中的git工具
  • Phpstorm怎样批量删除空行?
  • Python学习之路13-记分
  • SQL 难点解决:记录的引用
  • 大数据与云计算学习:数据分析(二)
  • 第十八天-企业应用架构模式-基本模式
  • 给第三方使用接口的 URL 签名实现
  • 如何优雅的使用vue+Dcloud(Hbuild)开发混合app
  • 十年未变!安全,谁之责?(下)
  • 使用Tinker来调试Laravel应用程序的数据以及使用Tinker一些总结
  • 数组大概知多少
  • 400多位云计算专家和开发者,加入了同一个组织 ...
  • ​​快速排序(四)——挖坑法,前后指针法与非递归
  • ​中南建设2022年半年报“韧”字当头,经营性现金流持续为正​
  • $分析了六十多年间100万字的政府工作报告,我看到了这样的变迁
  • (173)FPGA约束:单周期时序分析或默认时序分析
  • (附源码)springboot 智能停车场系统 毕业设计065415
  • (附源码)springboot炼糖厂地磅全自动控制系统 毕业设计 341357
  • (附源码)springboot学生选课系统 毕业设计 612555
  • (附源码)计算机毕业设计SSM教师教学质量评价系统
  • (附源码)计算机毕业设计SSM疫情社区管理系统
  • (力扣)1314.矩阵区域和
  • (论文阅读笔记)Network planning with deep reinforcement learning
  • (三)Hyperledger Fabric 1.1安装部署-chaincode测试
  • .net core webapi Startup 注入ConfigurePrimaryHttpMessageHandler
  • .NET Core跨平台微服务学习资源
  • .NET Core中的去虚
  • .net反编译工具
  • .Net小白的大学四年,内含面经
  • .net中的Queue和Stack
  • .ui文件相关
  • @DependsOn:解析 Spring 中的依赖关系之艺术
  • [ CTF ] WriteUp- 2022年第三届“网鼎杯”网络安全大赛(朱雀组)
  • [ MSF使用实例 ] 利用永恒之蓝(MS17-010)漏洞导致windows靶机蓝屏并获取靶机权限
  • [ vulhub漏洞复现篇 ] Grafana任意文件读取漏洞CVE-2021-43798
  • [20170713] 无法访问SQL Server
  • [20180312]进程管理其中的SQL Server进程占用内存远远大于SQL server内部统计出来的内存...
  • [3D基础]理解计算机3D图形学中的坐标系变换