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

0基础学前端---JS【计算机基础、变量、数据类型】

0基础学前端—JS【计算机基础、变量、数据类型】

视频参考:B站Pink老师
本节重点:计算机基础、变量、数据类型

本章目录

  • 0基础学前端---JS【计算机基础、变量、数据类型】
  • 计算机基础导读
      • 目标
        • 1.1 编程
        • 1.2 计算机语言
        • 1.3 编程语言
        • 1.4 翻译器
        • 1.5 编程语言和标记语言区别
      • 2. 计算机基础
    • 1. 初识JavaScript
      • 目标
        • 1.1 历史(略-可自行搜索)
        • 1.2 JS是什么
        • 1.3 JS的作用
        • 1.4 html/css/js关系
        • 1.5 浏览器执行JS简介
        • 1.6 JS的组成
        • 1.7 JS初体验
        • 1.8 JS注释
    • 2. JS输入输出语句
  • 变量
      • 目标
      • 1. 变量
        • 1.1 什么是变量
        • 1.2 变量在内存中的存储
      • 2. 变量的使用
      • 3. 变量的初始化
      • 案例---变量的使用
      • 4. 变量语法扩展
      • 5. 变量命名规范
      • 案例:课堂练习
      • 6. 小结
  • 数据类型
      • 目标
      • 1. 数据类型简介
        • 1.1 为什么需要数据类型
        • 1.2 变量的数据类型
        • 1.3 数据类型分类
      • 2. 简单数据类型
        • 2.1 简单数据类型(基本数据类型)
        • 2.2 数字型Number
        • 2.3 字符串型String
        • 弹出网页警示框
        • 案例:显示年龄
        • 2.4 布尔型Boolean
        • 2.5 Undefined和Null
      • 3. 获取变量数据类型
        • 3.1 获取检测变量的数据类型
        • 3.2 字面量--->是在源代码中一个固定值的表示法
      • 4. 数据类型转换
        • 4.1 什么是数据类型转换
        • 4.2 转换为字符串
        • **4.3 转换为数字型(重点)**
        • 案例1:计算年龄
        • 案例2:简单加法器
        • 4.4 转换为布尔型
        • 课后作业

计算机基础导读

目标

  • 能够说出什么是编程语言
  • 能够区分编程语言和标记语言的不同
  • 能够说出常见的数据存储单位及其换算关系
  • 能够说出内存的主要作用及特点
1.1 编程

为解决某个问题而使用某种程序设计语言编写程序代码。
计算机程序:是计算机所执行的一系列指令集合。

1.2 计算机语言

包含机器语言、汇编语言、高级语言

1.3 编程语言

编程语言=汇编语言+高级语言
有固定格式和词汇来控制计算机的一系列指令

1.4 翻译器

可以将编写的源代码转换为机器语言

1.5 编程语言和标记语言区别
  • 编程语言有很强逻辑性和行为能力。(主动)
  • 标记语言(html)不用于向计算机发出指令,常用于格式化和链接。标记语言的存在是用于被读取的,是被动的。(被动)

2. 计算机基础

bit < B < KB < MB < GB < TB

1. 初识JavaScript

目标

  • 能够说出JS是什么
  • 能够知道JS的发展历史
  • 能够说出浏览器执行JS的原理
  • 能够说出JS由哪三个部分组成
  • 能够写出JS3个输入输出语句
1.1 历史(略-可自行搜索)
1.2 JS是什么
  • JS是一种运行在客户端的脚本语言
  • 脚本语言:无需编译,运行过程中由JS解释器逐行来进行解释并执行
  • 现在也可以基于Node.js技术进行服务器端编程
  • JavaScript = JS
1.3 JS的作用
  • 表单动态校验(密码强度检测)【JS最初目的】
  • 网页特效
  • 服务端开发(Node.js)
  • 桌面程序(Electron)
  • App(Cordova)
  • 控制硬件—物联网(Ruff)
  • 游戏开发(cocos2d-js)
1.4 html/css/js关系

html、css描述类语言
js编程类语言

1.5 浏览器执行JS简介

浏览器分为2个部分:渲染引擎、JS引擎

  • 渲染引擎:用来解析html和css,俗称内核。 e:chrome浏览器的blink,老版本的webkit。
  • js引擎:也成为JS解释器,读JS代码。 e: chrome浏览器的V8.
    浏览器本身并不会执行JS代码,而是通过内置JS引擎来执行JS代码。
    JS引擎执行代码是逐行解释每一句源码(转换为机器语言),然后计算机去执行。
    所以JS语言归为脚本语言,会逐行解释执行。
1.6 JS的组成

JS包含:JS语法(ECMAScript)、页面文档对象模型(DOM)、浏览器对象模型(BOM)

1.7 JS初体验

JS有3种书写位置,分别为行内、内嵌和外部
(1)行内式JS

<input type='button' value='点我试试' onclick='alert('Hello World')'/>
  • 可以将单行或少量JS代码写在HTML标签的事件属性中(以on开头的属性),如:click
  • 注意单双引号的使用:在HTML中我们推荐使用双引号,JS中我们推荐使用单引号
  • 可读性差
  • 引号易错
  • 特殊情况下使用

(2)内嵌式JS

<script>
	alert('Hello World');
</script>
  • 可以将多行JS代码写到<script>标签中
  • 内嵌JS是学习时常用的方式

(3)外部JS文件

<script src='my.js'>不要写代码</script>
  • 利用html页面代码结构化,把大段JS代码独立到html页面之外,既美观,也方便文件级别的复用。
  • 引用外部JS文件的script标签中间不可以写代码
  • 适合于JS代码量比较大的情况

参考代码如下:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <!-- 2.内嵌式的js -->
    <script>
        // alert('沙漠骆驼');
    </script>
    <!-- 外部js script 双标签 -->
    <script src="my.js"></script>
</head>

<body>
    <!-- 1.行内式的js 直接写到元素内部-->
    <input type="button" value="唐伯虎" onclick="alert('秋香姐')">
</body>

</html>

my.js

alert('如果我是DJ,你还爱我吗?')

结果展示:
在这里插入图片描述
在这里插入图片描述

1.8 JS注释

单行: // 或 ctrl+/
多行:/**/ 或 ctrl+shift+/

2. JS输入输出语句

为了方便信息的输入输出,JS中提供了一些输入输出语句,其常用的语句如下:

方法说明归属
alert(msg)浏览器弹出警示框浏览器
console.log(msg)浏览器控制台打印输出信息浏览器
prompt(info)浏览器弹出输入框,用户可以输入浏览器

参考代码:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        //这是一个输入框
        prompt('请输入你的年龄');
        //alert弹出警示框 输出的 展示给用户的
        alert('计算的结果是');
        //console控制台输出 给程序员测试用的
        console.log('我是程序员能看到的');
    </script>
</head>

<body>

</body>

</html>

结果展示:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

变量

目标

  • 能够说出变量的主要作用
  • 能够写出变量的初始化
  • 能够说出变量的命名规范
  • 能够画出变量是如何在内存中存储的
  • 能够写出交换变量案例

1. 变量

1.1 什么是变量

白话理解:变量就是一个装东西的盒子。
通俗理解:变量是用于存放数据的容器。我们通过变量名获取数据,甚至数据可以修改。

1.2 变量在内存中的存储

本质:变量是程序在内存中申请的一块用来存放数据的空间
e: 类似于酒店房间,一个房间可以看作一个变量
在这里插入图片描述

2. 变量的使用

使用分为两步:1.声明变量 2.赋值

3. 变量的初始化

        var myname = 'pink老师';//声明一个变量并赋值,称为变量的初始化

知识点2、3的 参考代码如下:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        // 1.声明了一个age的变量
        var age;
        // 2.赋值 把值存入变量中
        age = 18;// 给age这个变量赋值为18
        // 3.输出结果
        console.log(age);
        //4.变量的初始化
        var myname = 'pink老师';
        console.log(myname);
    </script>
</head>

<body>

</body>

</html>

结果展示:
在这里插入图片描述

案例—变量的使用

案例1:查看变量内容
参考代码如下:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        var myname = '旗木卡卡西';
        var address = '火影村';
        var age = 30;
        var email = 'kakaxi@itcast.cn';
        var gz = 2000;
        console.log(myname);
        console.log(address);
        console.log(age);
        console.log(email);
        console.log(gz);
    </script>
</head>

<body>

</body>

</html>

结果展示:
在这里插入图片描述

案例2:弹出用户名
参考代码:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        // 1.用户输入姓名 存储到一个myname的变量里面
        var myname = prompt('请输入您的姓名');
        // 2.输出用户名
        alert(myname);
    </script>
</head>

<body>

</body>

</html>

结果展示:
在这里插入图片描述
在这里插入图片描述

4. 变量语法扩展

1)更新变量
一个变量被重新赋值后,它原有的值就会被覆盖,变量值将以最后一次赋的值为准。

  var age=18;
      age=81;//最后的结果就是81因为18被覆盖掉了

2)同时声明多个变量
同时声明多个变量时,只需要写一个var,多个变量名之间使用英文逗号隔开

var age=18;address=‘火影村’,gz=2000;

3)声明变量特殊情况

情况说明结果
var age;console.log(age);只声明,不赋值undefined
console.log(age);不声明,不赋值报错
age=10;console.log(age);只赋值,不声明10

参考代码如下:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        // 1.更新变量
        var myname = 'pink老师';
        console.log(myname);
        myname = '迪丽热巴';
        console.log(myname);
        // 2.声明多个变量
        // var age = 180;
        // var address = '火影村';
        // var gz = 2000;
        var age = 18,
            address = '火影村',
            gz = 2000;
        // 3.声明变量的特殊情况
        // 3.1只声明不赋值 结果是? 程序也不知道里面存的是什么 所以结果是undefined 未定义的
        var sex;
        console.log(sex);//undefined
        //3.2 不声明不赋值,直接使用某个变量会报错
        // console.log(tel);
        //3.3不声明直接赋值使用
        qq = 110;
        console.log(qq);
    </script>
</head>

<body>

</body>

</html>

结果展示:
在这里插入图片描述

5. 变量命名规范

  • 由字母(A-Z,a-z)、数字(0~9)、下划线(_)、美元符号($)组成,如:usrAge,num01,_name
  • 严格区分大小写。app和App是两个变量
  • 不能以数字开头。18age是错误的
  • 不能是关键字、保留字。例如:var、for、while
  • 变量名必须有意义。例如:age
  • 遵守驼峰命名法。首字母小写,后面单词的首字母需要大写。例如:myFirstName

案例:课堂练习

要求:交换两个变量的值(实现思路:使用一个临时变量temp来做中间存储)
参考代码:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        //1.apple1给temp(临时变量)
        //2.apple2给apple1
        //3.从temp中的值给apple2
        var apple1 = '青苹果', apple2 = '红苹果', temp;
        temp = apple1;
        apple1 = apple2;
        apple2 = temp;
        console.log(apple1);
        console.log(apple2);
    </script>
</head>

<body>

</body>

</html>

结果展示:这个代码是基础代码就不详细解释了
在这里插入图片描述

6. 小结

  • 为什么需要变量?---->因为有数据需要保存
  • 变量是什么?—>是一个存放数据的容器
  • 变量本质是什么?—>内存中的一块空间,用来存储数据
  • 变量怎么使用的?—>声明之后赋值,本质是申请内存空间
  • 什么是变量的初始化?—>声明变量并赋值
  • 变量命名规则有哪些?—>看5
  • 交换两个变量值的思路?—>看案例

数据类型

目标

  • 能够说出5种简单数据类型
  • 能够使用typeof获取变量的类型
  • 能够说出1~2种转换为数值型的方法
  • 能够说出1~2种转换为字符型的方法
  • 能够说出什么是隐式转换

1. 数据类型简介

1.1 为什么需要数据类型

为了便于把数据分成所需内存大小不同的数据,充分利用存储空间,定义了不同的数据类型。

1.2 变量的数据类型

JS是一种弱类型或者说是动态语言,这意味着不用提前声明变量的类型,在程序运行过程中,类型会被自动确定。

  var age=10;//这是一个数字型
  var areYouok='是的'//这是一个字符串

在代码运行时,变量的数据类型是由JS引擎根据等号右边变量值的数据类型来判断的,运行完毕后,变量就确定了数据类型。
JS拥有动态类型,同时也意味着相同的变量可用作不同的类型:

var x=6;//x为数字
var x='Bill';//x为字符串

参考代码:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        //int num=10;java
        // var num;//这里的num不确定属于那种数据类型的
        var num = 10;//num属于数字型
        //js的变量数据类型是只有程序在运行过程中,根据等号右边的值来确定的
        var str = 'pink';//str字符串型
        //js是动态语言 变量的数据类型是可以变化的
        var x = 10;//x是数字型
        x = 'pink';//x字符串型

    </script>
</head>

<body>

</body>

</html>
1.3 数据类型分类

JS把数据类型分为两类:

  • 简单数据类型(Number、String、Boolean、Undefined、Null)
  • 复杂数据类型(Object)

2. 简单数据类型

2.1 简单数据类型(基本数据类型)
简单数据类型说明默认值
Number数字型(包含整数型和浮点型)0
Boolean布尔型(true、false)false
String字符串类型,要带引号" "
Undefinedvar a;声明但未赋值,此时a=undefinedundefined
Nullvar a=null;声明变量a为空值null
2.2 数字型Number
  var age=21; //整数
  var Age=21.37447; //小数

1)数字型进制
0o—>8进制 0x—>16进制
2) 数字型范围
MAX_VALUE(≈1.79)~MIN_VALUE(≈5e-324)
3) 数字型3个特殊值

特殊值说明
Infinity无穷
-Infinity负无穷
NaN非数值
参考代码:
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        var num = 10;
        var PI = 3.14;
        //1.八进制 0~7 我们程序里面数字前面加0o 表示八进制
        var num1 = 0o10;
        console.log(num1);
        var num2 = 0o12;
        console.log(num2);
        //2.十六进制 0-9 A-F数字前面加0x 表示16进制
        var num3 = 0x9;
        console.log(num3);
        var num4 = 0xa;
        console.log(num4);
        //3.数字型的最大/小值
        console.log(Number.MAX_VALUE);
        console.log(Number.MIN_VALUE);
        //4.无穷大
        console.log(Number.MAX_VALUE * 2);//Infinity
        //5.无穷小
        console.log(-Number.MAX_VALUE * 2);//-Infinity
        //6.非数值
        console.log('pink老师' - 100);

    </script>
</head>

<body>

</body>

</html>

结果展示:

4) isNaN()
用来判断一个变量是否为非数字的类型,true/false
isNaN(x):x是数字,返回false;x不是数字,返回true
参考代码:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        //isNaN()这个方法用来判断非数字 并且返回一个值 是数字返回false 不是数字返回true
        console.log(isNaN(12));//false
        console.log(isNaN('pink'));//true


    </script>
</head>

<body>

</body>

</html>

结果展示:
在这里插入图片描述

2.3 字符串型String
  1. 字符串引号嵌套(外双内单,外单内双)
  2. 字符串转义符
转义符解释说明
\n换行符,n=newline
\斜杠
\ ’单引号
\ "双引号
\ttab缩进
\b空格 b=blank

参考代码:展示了\n的效果

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        //'pink' 'pink老师' '12' 'true'
        // var str = "我是一个'高富帅'的程序员";
        //字符串转义字符 都是用\开头 但是这些转义字符要写到引号里面
        var str = '我是一个"高富帅"的\n程序员';
        console.log(str);

    </script>
</head>

<body>

</body>

</html>

结果展示:
在这里插入图片描述

弹出网页警示框

参考代码:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        alert('酷热难耐,火辣的太阳底下,我挺拔的身姿,成为了最为独特的风景。\n我审视四周,这里,是我的舞台,我就是天地间的王者。\n这一刻,我豪气冲天,终于大喊一声:"收破烂啦~"')
    </script>
</head>

<body>

</body>

</html>

结果展示:
在这里插入图片描述
3) 字符串长度
通过字符串length属性获取整个字符串的长度

 var str='my name is andy';
  console.log(str.length);
  1. 字符串拼接
  • 使用+进行拼接 字符串+任何类型=拼接之后的新字符串
  • 拼接前会把与字符串相加的任何类型转成字符串,再拼接成一个新的字符串
  • +号总结:数字相加,字符相连

参考代码:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        //1.检测获取字符串的长度length
        var str = 'my name is andy';
        console.log(str.length);//15
        //2.字符串拼接 + 只要有字符串和其他类型拼接 最后都是字符串
        console.log('沙漠' + '骆驼');
        console.log('pink老师' + 18);//pink老师18
        console.log('pink' + true);
        console.log(12 + 12);
        console.log('12' + 12);



    </script>
</head>

<body>

</body>

</html>

结果展示:
在这里插入图片描述
5)字符串拼接加强

  • 我们经常会将字符串和变量来拼接,因为变量可以很方便的修改里面的值
  • 变量是不能加引号的,加引号会变成字符串
  • 如果变量两侧都有字符串拼接,口诀:引引加加,删掉数字,变量写中间
e: console.log('pink老师'+age+'岁')

参考代码:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        console.log('pink老师' + 18);
        console.log('pink老师' + 18 + '岁');
        var age = 19;
        //变量不要写到字符串里 是通过和字符串相连的方式实现的
        console.log('pink老师' + age + '岁');
        //变量和字符串相连的口诀:引引加加'++'
        console.log('pink老师' + age + '岁');

    </script>
</head>

<body>

</body>

</html>

结果展示:(可以轻松修改age)
在这里插入图片描述

案例:显示年龄

需求:弹出一个输入框,需要输入年龄,之后弹出一个警示框显示‘您今年XX岁了’。
参考代码:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        var age = prompt('请输入您的年龄');
        // alert('您今年' + age + '岁');
        //也可以分开写
        var str = '您今年' + age + '岁';
        alert(str);
    </script>
</head>

<body>

</body>

</html>

结果展示:
在这里插入图片描述
在这里插入图片描述

2.4 布尔型Boolean

布尔类型有两个值:true和false,其中true表示真(1),false表示假(0)

console.log(true+1);//2
console.log(false+1);//1`在这里插入代码片`
2.5 Undefined和Null

一个声明后没有被赋值的变量会有一个默认值undefined(如果相连或相加,注意结果)
undefined+数字=NaN
一个声明变量给null值,里面存的值为空
null+数字=数字
2.4和2.5的参考代码:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        var flag = true;//flag布尔型
        var flag1 = false;//flag布尔型
        console.log(flag + 1);//true参与加法运算当1来看
        console.log(flag1 + 1);//false 参与加法运算当0来看
        //如果一个变量声明未赋值 就是undefined 未定义数据类型
        var str;
        console.log(str);
        var variable = undefined;
        console.log(variable + 'pink');
        console.log(variable + 1);// undefined和数字相加 最后结果是NaN
        //null 空值
        var space = null;
        console.log(space + 'pink');
        console.log(space + 1);//空值+1=1




    </script>
</head>

<body>

</body>

</html>

结果展示:
在这里插入图片描述

3. 获取变量数据类型

3.1 获取检测变量的数据类型

typeof可以用来获取检测变量的数据类型,也可以通过控制台输出颜色判断
参考代码:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        var num = 10;
        console.log(typeof num);//number
        var str = 'pink';
        console.log(typeof str);//string
        var flag = true;
        console.log(typeof flag);//boolean
        var vari = undefined;
        console.log(typeof vari);//undefined
        var time = null;
        console.log(typeof time);//object
        //prompt取过来的值是字符型的
        var age = prompt('请输入你的年龄');
        console.log(age);
        console.log(typeof age);

    </script>
</head>

<body>

</body>

</html>

结果展示:
![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/41a045dcfd614787a2f2e2d5b39747b2.png
注意:prompt取到的结果类型为字符型。

3.2 字面量—>是在源代码中一个固定值的表示法

通俗来说,就是字面量表示如何表达这个值,就是写在代码里的固定值

  • 数字字面量:8,9,10
  • 字符串字面量:‘黑马程序员’,’大前端‘
  • 布尔字面量:true,false

参考代码:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>字面量</title>
    <script>
        console.log(18);
        console.log('18');
        console.log(true);
        console.log(undefined);
        console.log(null);
    </script>
</head>

<body>

</body>

</html>

结果展示:
在这里插入图片描述

4. 数据类型转换

4.1 什么是数据类型转换

使用表单、prompt获取过来的数据默认为字符串类型,此时不能直接简单相加,需要转变量的数据类型,即把一种数据类型的变量转换为另一种数据类型
我们通常会实现3中方式的转换:

  • 转换为字符串类型
  • 转换为数字型
  • 转换为布尔型
4.2 转换为字符串
方式说明案例
toString()转成字符串var num=1;alert(num.toString());
String()强制转换转成字符串var num=1;alert(String(num));
加号拼接字符串和字符串拼接的结果都是字符串var num=1;alert(num+‘我是字符串’);
  • toString() 和String()的使用方式不一样
  • 3种转换方式,我们常用第三种方法,已称为隐式转换

参考代码:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>转换为字符型</title>
    <script>
        //1.把数字型换为字符串型 变量.toString()
        var num = 10;
        var str = num.toString();
        console.log(str);
        console.log(typeof str);
        //2. String(变量)
        console.log(String(num));
        //3.利用拼接+字符串的方法实现转换效果 隐式转换
        console.log(num + '');

    </script>
</head>

<body>

</body>

</html>

结果展示:
在这里插入图片描述

4.3 转换为数字型(重点)
方式说明案例
parseInt(string)函数将string类型转成整数数值型parseInt(‘78’);
parseFloat(string)函数将string类型转成浮点数数值型parseFloat(‘78.21’);
Number()强制转换函数将string类型转成数值型Number(‘12’);
js隐式转换(-*/)利用算术运算隐式转换为数值型’12‘-0
  • 注意parseInt和parseFloat单词的大小写,2个为重点
  • 隐式转换是我们再进行算术运算的时候,js自动转换了数据类型

参考代码:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        var age = prompt('请输入你的年龄');
        //1.parseInt(变量) 可以把字符型转换为数字型 得到的是整数
        console.log(parseInt(age));
        console.log(parseInt('3.14'));//3 取整
        console.log(parseInt('3.94'));//3 取整
        console.log(parseInt('120px'));//120 会去掉px单位
        console.log(parseInt('rem120px'));//NaN 尝试从字符串开头解析数字,但字符串以字母 "r" 开头,无法转换为有效数字,因此返回 NaN
        //2.parseFloat(变量) 可以把字符型转换为数字型 得到的是小数 浮点数
        console.log(parseFloat('3.14'));//3.14
        console.log(parseFloat('120px'));//120 会去掉px单位
        console.log(parseFloat('rem120px'));//NaN
        //3.利用number(变量)
        var str = '123';
        console.log(Number(str));
        console.log(Number('12'));
        //4.利用了算术运算- * / 隐式转换
        console.log('12' - 0);
        console.log('123' - '120');
        console.log('123' * 1);



    </script>
</head>

<body>

</body>

</html>

结果展示:
![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/b5d0d6808caa4d66924cd3a352c480be.png
在这里插入图片描述

案例1:计算年龄

要求在页面中弹出一个输入框,我们输入年份后,能计算出我们的年龄。
参考代码:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>年龄计算</title>
    <script>
        var birth = prompt('请输入您的出生年份');
        // console.log(typeof birth);
        var age = 2025 - birth;//birth取过来是字符串型 但这里用的是减法 使用了隐式转换
        alert('您的年龄为' + age + '岁');
    </script>
</head>

<body>

</body>

</html>

结果展示:
在这里插入图片描述
在这里插入图片描述

案例2:简单加法器

计算两个数的值,用户输入第一个值后,继续弹出第二个输入框并输入第二个值,最后通过弹出窗口显示出2个输入值相加的结果。
参考代码:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>简单加法器案例</title>
    <script>
        var num1 = prompt('请输入第一个数字');
        var num2 = prompt('请输入第二个数字');
        var result = parseFloat(num1) + parseFloat(num2);
        alert('结果为' + result);
    </script>
</head>

<body>

</body>

</html>

参考结果:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4.4 转换为布尔型
方式说明案例
Boolean()函数其他类型转成为布尔值Boolean(‘true’);
  • 代表空、否定的之会被转换为false,如’ '、0、NaN、null、undefined
  • 其余值都被转换为true

参考代码:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        console.log(Boolean(''));//false
        console.log(Boolean(0));//false
        console.log(Boolean(NaN));//false
        console.log(Boolean(null));//false
        console.log(Boolean(undefined));//false
        console.log(Boolean('123'));
        console.log(Boolean('你好吗'));
        console.log(Boolean(123));


    </script>
</head>

<body>

</body>

</html>

结果展示:
在这里插入图片描述
JS为解释行语言,边解释边运行;编译语言Java,编译完再运行

课后作业

要求:依次询问并获取用户的姓名、年龄、性别并打印信息。
参考代码:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>课后作业</title>
    <script>
        var name = prompt('请输入您的姓名');
        var age = prompt('请输入您的年龄');
        var sex = prompt('请输入您的性别');
        alert('您的姓名是:' + name + '\n' + '您的年龄是:' + age + '\n' + '您的性别是:' + sex);
    </script>
</head>

<body>

</body>

</html>

结果展示:
在这里插入图片描述
—————————————————————————————————————————
下面即将继续更新JS的相关内容,有什么问题都可以在评论区进行讨论哦!

相关文章:

  • 学习海康VisionMaster之平行线计算
  • 3 VS Code 深度配置与优化指南:settings.json 详解、快捷键大全、实用插件推荐及离线安装方法
  • 设计模式实践:模板方法、观察者与策略模式详解
  • ES6学习03-字符串扩展(unicode、for...of、字符串模板)和新方法()
  • 大模型微调数据集怎么搞?基于easydataset实现文档转换问答对json数据集!
  • Scala day4(tuple, set and map)
  • echarts 图表
  • 【阶次跟踪】变转速阶次包络谱
  • 海洋垃圾分割数据集labelme格式3110张8类别
  • 从案例看建设工程领域居间合同的法律效力
  • 洛谷P8749 [蓝桥杯 2021 省 B] 杨辉三角形
  • 关于无线网络安全的基础知识,涵盖常见威胁、防护措施和实用建议
  • 简单记录一下Android四大组件
  • MySQL部分总结
  • 07.unity 游戏开发-粒子系统
  • 结构化需求分析:功能、数据与行为的全景建模
  • Tauri 2.3.1+Leptos 0.7.8开发桌面应用--Sqlite数据库的写入、展示和选择删除
  • 安卓设备使用网线连接电脑lan口
  • 从存储到智能:AI NAS的技术路径与未来演进
  • Android游戏辅助工具开发详解
  • 马上评|让“贾宝玉是长子长孙”争议回归理性讨论
  • 中华人民共和国和俄罗斯联邦关于全球战略稳定的联合声明
  • 网民反映“潜水时遭遇服务质量不佳”,三亚开展核查调查
  • 当年的你,现在在哪里?——新民晚报杯40周年寻人启事
  • 魔都眼|上海多家商场打开绿色通道,助力外贸出口商品转内销
  • 五一假期,长三角铁路张家港、台州等多个车站客发量创新高