JavaScript零基础通关(1)变量的数据类型,使用,概述,输入输出语句。JS的组成,编程语言

1. 编程语言

1.1 编程

编程:就是让计算机为解决某个问题而使用某种程序设计语言编写程序代码,并最终得到结果的过程。
计算机程序:就是计算机所执行的一系列的指令集合,而程序全部都是用我们所掌握的语言来编写的,所以人们要控制计算机一定要通过计算机语言向计算机发出命令。
从事编程的人员,就是程序员。 但是一般程序员都比较幽默,为了形容自己的辛苦工作,也成为“码农”, 或者 “程序猿”/ “程序媛”

注意:上面所定义的计算机指的是任何能够执行代码的设备,可能是智能手机、ATM机、黑莓PI、服务器等等。

计算机是任何能够执行代码的设备,可能是智能手机,ARM机器,黑莓PO服务器等等

1.2 计算机语言

计算机语言指用于人与计算机之间通讯的语言,它是人与计算机之间传递信息的媒介。
计算机语言的种类非常的多,总的来说可以分成机器语言,汇编语言和高级语言三大类。
实际上计算机最终所执行的都是 机器语言,它是由“0”和“1”组成的二进制数,二进制是计算机语言的基础。

1.3 编程语言

可以通过类似于人类语言的 ”语言”来控制计算机,让计算机为我们做事情,这样的语言就叫做编程语言(Programming Language)。
编程语言是用来控制计算机的一系列指令,它有固定的格式和词汇(不同编程语言的格式和词汇不一样),必须遵守。
如今通用的编程语言有两种形式:汇编语言和高级语言。
汇编语言和机器语言实质是相同的,都是直接对硬件操作,只不过指令采用了英文缩写的标识符,容易识别和记忆。
高级语言主要是相对于低级语言而言,它并不是特指某一种具体的语言,而是包括了很多编程语言,常用的有C语言、C++、Java、C#、Python、PHP、JavaScript、Go语言、Objective-C、Swift等。
高级语言主要是相对于低级语言,它并不是特指某一种具体的语言,而是包括了很多编程语言

C语言:puts("你好");
PHP:echo "你好";
Java:System.out.println("你好");
JavaScript: alert("你好";

1.4 翻译器

高级语言所编制的程序不能直接被计算机识别,必须经过转换才能被执行,为此,我们需要一个翻译器。
翻译器可以将我们所编写的源代码转换为机器语言,这也被称为二进制化。 记住1和 0。
在这里插入图片描述
高级语言所编制的程序不能直接被计算机是被,必须经过转换才能执行,翻译器可以将我们所编写的源代码转换成为机器语言,这也称为二进制话,

1.5 编程语言和标记语言区别

编程语言有很强的逻辑和行为能力。在编程语言里, 你会看到很多 if else 、for 、while等具有逻辑性和行为能力的指令,这是主动的。
标记语言(html)不用于向计算机发出指令,常用于格式化和链接。标记语言的存在是用来被读取的, 他是被动的。
标记语言html不用于向计算机发出指令,常用于格式化和链接,标记语言的存在是用来被读取的,
标记语言html不同应用于向计算机发出指令常用于格式化和链接,标记语言的存在是用来被读取的
计算机可以帮助人类解决某些问题
程序员利用编程语言编写程序发出指令控制计算机来实现这些任务
编程语言有机器语言、汇编语言、高级语言
高级语言需要一个翻译器转换为计算机识别的机器语言
编程语言是主动的有很强的逻辑性
编程语言是主动的由很强的逻辑性

2. 计算机基础

在这里插入图片描述
硬盘永久存储数据,内存暂时存储数据,
在这里插入图片描述

2.2 数据存储

计算机内部使用二进制 0 和 1来表示数据。
所有数据,包括文件、图片等最终都是以二进制数据(0 和 1)的形式存放在硬盘中的。
所有程序,包括操作系统,本质都是各种数据,也以二进制数据的形式存放在硬盘中。平时我们所说的安装软件,其实就是把程序文件复制到硬盘中。
硬盘、内存都是保存的二进制数据。

所有数据,文件,图片等最终以二进制数据的形式存放在硬盘当中
硬盘内存都是保存的二进制数据
所有程序,包括操作系统本质都是各种数据,安装软件,把程序文件复制到硬盘当中
所有程序,包括操作系统本质都是各种数据,平时我们所说的安装软件,其实就是把程序文件复制到硬盘当中
bit < byte < kb < GB < TB<…
位(bit): 1bit 可以保存一个 0 或者 1 (最小的存储单位)
字节(Byte):1B = 8b
千字节(KB):1KB = 1024B
兆字节(MB):1MB = 1024KB
吉字节(GB): 1GB = 1024MB
太字节(TB): 1TB = 1024GB

字节Byte1B=8b
千字节KB,1KB=1024B
兆字节MB

2.4 程序运行

在这里插入图片描述
打开某个程序是,先把硬盘当中的程序代码加载到内存当中
cpu执行内存当中的代码
cpu执行内存达能中的代码
注意:之所以要内存的一个重要原因,是因为 cpu 运行太快了,如果只从硬盘中读数据,会浪费cpu性能,所以,才使用存取速度更快的内存来保存运行时的数据。(内存是电,硬盘是机械)
之所以要内存的一个重要原因,是因为cpu运行太快,如果只从硬盘当中读数据,会浪费cpu性能,所以,才使用存取速度更快的内存来保存运行的时候数据。

初识JavaScript

1.1 JavaScript 是什么

布兰登·艾奇(Brendan Eich,1961年~)。
神奇的大哥用10天完成 JavaScript 设计。
最初命名为 LiveScript,后来在与 Sun 合作之后将其改名为 JavaScript。

布兰登`艾奇
JavaScript 是世界上最流行的语言之一,是一种运行在客户端的脚本语言 (Script 是脚本的意思)
脚本语言:不需要编译,运行过程中由 js 解释器( js 引擎)逐行来进行解释并执行
现在也可以基于 Node.js 技术进行服务器端编程
客户端的脚本语言,不需要编译,运行的过程由JS解释器逐行来进行解释并执行的
在这里插入图片描述
客户端(自己的电脑)-》远程服务器
为了阅读方便,我们后面把JavaScript 简称为 JS。

1.2 JavaScript 的作用

表单动态校验(密码强度检测) ( JS 产生最初的目的 )
网页特效
服务端开发(Node.js)
桌面程序(Electron)
App(Cordova)
控制硬件-物联网(Ruff)
游戏开发(cocos2d-js)
表单动态校验,网页特效,服务端开发Node.js,桌面程序ElectronApp,Cordoca控制硬件-物联网Ruff游戏开发cocos2d-js

1.3 HTML/CSS/JS 的关系

HTML/CSS 标记语言–描述类语言
HTML 决定网页结构和内容( 决定看到什么 ),相当于人的身体
CSS 决定网页呈现给用户的模样( 决定好不好看 ),相当于给人穿衣服、化妆
HTML绝定网页结构和内容的,相当于人的身体,
CSS绝定网页呈现给用户的墨阳,相当于给人穿衣服,化妆

JS 脚本语言–编程类语言

实现业务逻辑和页面控制( 决定功能 ),相当于人的各种动作
实现业务逻辑和页面控制,决定功能,

1.4 浏览器执行 JS 简介

浏览器分成两部分:渲染引擎和 JS 引擎
渲染引擎:用来解析HTML与CSS,俗称内核,比如 chrome 浏览器的 blink ,老版本的 webkit
JS 引擎:也称为 JS 解释器。 用来读取网页中的JavaScript代码,对其处理后运行,比如 chrome 浏览器的 V8
渲染引擎:用来解析HTML和css俗称内核,比如chrome浏览器的blink老版本的webkit
浏览器本身并不会执行JS代码,而是通过内置 JavaScript 引擎(解释器) 来执行 JS 代码 。JS 引擎执行代码时逐行解释每一句源码(转换为机器语言),然后由计算机去执行,所以 JavaScript 语言归为脚本语言,会逐行解释执行。
由JS引擎执行页面的JS的代码
由JS引擎执行页面的JS的代码
浏览器本很不会执行JS的代码,而是通过内置的JS引擎来执行JS的代码,JS引擎执行代码的时候逐行解释每一句源码,转换成为机器鱼呀在这里插入图片描述
在这里插入图片描述
DOM页面文档对象模型,
BOM浏览器对象模型

1.5 JS 的组成

  1. ECMAScript
    ECMAScript 是由ECMA 国际( 原欧洲计算机制造商协会)进行标准化的一门编程语言,这种语言在万维网上应用广泛,它往往被称为 JavaScript 或 JScript,但实际上后两者是 ECMAScript 语言的实现和扩展。
    在这里插入图片描述
    ECMAScript:ECMAScript 规定了JS的编程语法和基础核心知识,是所有浏览器厂商共同遵守的一套JS语法工业标准。
    ECMAScript规定了JS编程语法和基础核心只是,
  2. DOM ——文档对象模型
    文档对象模型(Document Object Model,简称DOM),是W3C组织推荐的处理可扩展标记语言的标准编程接口。通过 DOM 提供的接口可以对页面上的各种元素进行操作(大小、位置、颜色等)。处理可扩展标记语言的标准编程接口,通过DOM提供的接口堆页面上的各种元素进行操作
  3. BOM ——浏览器对象模型
    BOM (Browser Object Model,简称BOM) 是指浏览器对象模型,它提供了独立于内容的、可以与浏览器窗口进行互动的对象结构。通过BOM可以操作浏览器窗口,比如弹出框、控制浏览器跳转、获取分辨率等。
    Bom Browser Object Model简称BOM,
    JS 有3种书写位置,分别为行内、内嵌和外部。
  4. 行内式 JS
<input type="button" value="点我试试" onclick="alert('Hello World')" />

input type=“button” value=“点我事实” onlick=“alert(‘helloworld’)”
可以将单行或少量 JS 代码写在HTML标签的事件属性中(以 on 开头的属性),如:onclick
注意单双引号的使用:在HTML中我们推荐使用双引号, JS 中我们推荐使用单引号
可读性差, 在html中编写JS大量代码时,不方便阅读;
引号易错,引号多层嵌套匹配时,非常容易弄混;
特殊情况下使用
可读性差,引号多层嵌套匹配,非常容易弄混
5. 内嵌 JS

 <script>
    alert('Hello  World~!');
 </script>

可以将多行JS代码写到

2.1 单行注释

为了提高代码的可读性,JS与CSS一样,也提供了注释功能。JS中的注释主要有两种,分别是单行注释和多行注释。
单行注释的注释方式如下:
// 我是一行文字,不想被 JS引擎 执行,所以 注释起来
// 用来注释单行文字( 快捷键 ctrl + / )

2.2 多行注释

多行注释的注释方式如下:

/*
  获取用户年龄和姓名
  并通过提示框显示出来
*/

/* */ 用来注释多行文字( 默认快捷键 alt + shift + a )
快捷键修改为: ctrl + shift + /
vscode  首选项按钮  键盘快捷方式  查找 原来的快捷键  修改为新的快捷键  回车确认

3. JavaScript 输入输出语句

为了方便信息的输入输出,JS中提供了一些输入输出语句,其常用的语句如下:
在这里插入图片描述
归属:浏览器
console.log(msg)浏览器控制台打印输出信息,浏览器
prompt(info)浏览器弹出输入框,用户可以输入,浏览器
注意:alert() 主要用来显示消息给用户,console.log() 用来给程序员自己看运行时的消息。
console.loh()用来给程序员自己看运行的时候消息
alert()主要用来显示消息给用户的
注意:alert() 主要用来显示消息给用户,console.log() 用来给程序员自己看运行时的消息。

1. 变量概述

1.1 什么是变量
白话:变量就是一个装东西的盒子。
通俗:变量是用于存放数据的容器。 我们通过 变量名 获取数据,甚至数据可以修改。
变量用于存放数据的容器,我们通过变量名获取数据,甚至数据可以修改
1.2 变量在内存中的存储
本质:变量是程序在内存中申请的一块用来存放数据的空间。
类似我们酒店的房间,一个房间就可以看做是一个变量。
在这里插入图片描述

2. 变量的使用

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

  1. 声明变量
//  声明变量  
var age; //  声明一个 名称为age 的变量     

var 是一个 JS关键字,用来声明变量( variable 变量的意思 )。使用该关键字声明变量后,计算机会自动为变量分配内存空间,不需要程序员管
age 是程序员定义的变量名,我们要通过变量名来访问内存中分配的空间
var是一个JS关键字用来声明变量,使用该关键字声明变量以后,计算机会自动为变量分配内存空间,不需要程序员管
2. 赋值
age是程序员定义的变量名,我们要通过变量名来访问内存当中分配空间

age = 10; // 给 age  这个变量赋值为 10          

= 用来把右边的值赋给左边的变量空间中 此处代表赋值的意思
变量值是程序员保存到变量空间里的值
变量值是程序员保存到变量空间里的值
3. 变量的初始化

var age = 18; // 声明变量同时赋值为 18
声明一个变量并赋值, 我们称之为变量的初始化。
声明一个变量并赋值,我们称之为变量的初始化
案例:变量的使用
有个叫卡卡西的人在旅店登记的时候前台让他填一张表,这张表里的内容要存到电脑上,表中的内容有:姓名、年龄、邮箱、家庭住址和工资,存储之后需要把这些信息显示出来,所显示的内容如下:
我叫旗木卡卡西,我住在火影村,我今年30岁了,我的邮箱是 [email protected],我的工资2000
案例:变量的使用
弹出一个输入框,提示用户输入姓名。
弹出一个对话框,输出用户刚才输入的姓名。

编程语言

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

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <script>
        alert('我是编程语言,来控制电脑网页弹出你好');
        alert('我是编程语言,来控制电脑网页弹出你好');
    </script>
</head>

<body>

</body>

</html>

02-初体验

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

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

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

</html>

《script src=“my.js”/script>
input type=“button” value=“tangbohu” οnclick=“alert(‘’)”/

03-JS注释

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

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <script>
        // 1. 单行注释  ctrl + /
        /* 2. 多行注释  默认的快捷键 shift +  alt  + a
           2. 多行注释  vscode 中修改多行注释的快捷键:  ctrl + shift + /
        */
    </script>
</head>

<body>

</body>

</html>

shift+alt+a

04-JS输入输出语句

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

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

<body>

</body>

</html>

05变量

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

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

<body>

</body>

</html>

var age;
age=18
console.log(age)
var myname=‘pink老师’;
console.log(myname);

06变量案例

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

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <script>
        var myname = '旗木卡卡西';
        var address = '火影村';
        var age = 30;
        var email = '[email protected]';
        var gz = 2000;
        console.log(myname);
        console.log(address);
        console.log(age);
        console.log(email);
        console.log(gz);
    </script>
</head>

<body>

</body>

</html>

07-变量案例

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

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

<body>

</body>

</html>

08-变量语法

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

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <script>
        // 1. 更新变量
        var myname = 'pink老师';
        console.log(myname);
        myname = '迪丽热巴';
        console.log(myname);
        // 2. 声明多个变量
        // var age = 18;
        // 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>

var age=18,address=‘或英寸’,gz=200;
之声明不赋值结果式?只声明不赋值结果式?程序也不知道里面存的是啥结果式undefinedundefined
不声明不赋值直接使用某个变量会报错
不声明直接赋值使用
不声明不赋值直接使用某个变量会报错的

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

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <script>
        var app = 10;
        var App = 100;
        console.log(app);
        console.log(App);
        // var 18age;
        // var var; 因为var 有特殊意义了,这个叫做关键字 不能作为变量名的   for  while if
        // name 我们尽量不要直接使用name 作为变量名
        // console.log(tel);
        console.log(name);
    </script>
</head>

<body>

</body>

</html>

10-交换两个变量值

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

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <script>
        // js 是编程语言有很强的逻辑性在里面: 实现这个要求的思路 先怎么做后怎么做 
        // 1. 我们需要一个临时变量帮我们
        // 2. 把apple1 给我们的临时变量 temp 
        // 3. 把apple2 里面的苹果给 apple1 
        // 4. 把临时变量里面的值 给 apple2 
        var temp; // 声明了一个临时变量为空
        var apple1 = '青苹果';
        var apple2 = '红苹果';
        temp = apple1; // 把右边给左边
        apple1 = apple2;
        apple2 = temp;
        console.log(apple1);
        console.log(apple2);
    </script>
</head>

<body>

</body>

</html>

JS编程语言由很强的逻辑性在理啊敏,实现这个要求的思路,先怎么做后怎么做

11-变量的数据类型

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

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <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>

str字符串型,js是动态语言,变量的数据类型是可以变化的
js的变量数据类型只有程序在运行过程当中,根据等号右边的值来确定的

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

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <script>
        var num = 10; // num 数字型 
        var PI = 3.14 // PI 数字型
            // 1. 八进制  0 ~ 7  我们程序里面数字前面加0 表示八进制
        var num1 = 010;
        console.log(num1); //  010  八进制 转换为 10进制 就是  8 
        var num2 = 012;
        console.log(num2);
        // 2. 十六进制  0 ~ 9  a ~ f    #ffffff  数字的前面加 0x 表示十六进制
        var num3 = 0x9;
        console.log(num3);
        var num4 = 0xa;
        console.log(num4);
        // 3. 数字型的最大值
        console.log(Number.MAX_VALUE);
        // 4. 数字型的最小值
        console.log(Number.MIN_VALUE);
        // 5. 无穷大
        console.log(Number.MAX_VALUE * 2); // Infinity 无穷大  
        // 6. 无穷小
        console.log(-Number.MAX_VALUE * 2); // -Infinity 无穷大
        // 7. 非数字
        console.log('pink老师' - 100); // NaN
    </script>
</head>

<body>

</body>

</html>

-Infinity无穷大,
Infinnity无穷大

猜你喜欢

转载自blog.csdn.net/weixin_43428283/article/details/124056571