JS——入门(内附习题源码)

目录

一:初识JAVASCRIPT

1:编程语言

3:存储单位

二:JAVASCRIPT基础

JS组成

JS初体验

行内:

缺点:

内嵌:

外部:

JS注释

JS输出语句

变量的声明:

总结:

数据类型

简单数据类型:

数字型进制

数字型范围

数字的特殊值

isNaN

String字符串类型

套引号嵌

字符串转义符

字符串长度

字符串拼接

总结:

布尔型Boolean

Undefined和 Null

获取变量类型

类型转换

转换为字符串

数字类型转换

转为布尔类型

总结

举例练习:

     实现用户输入姓名,年龄,专业,并控制在输出台来

交换两个变量值

输入出生年份,计算年龄

输入周岁年龄,在控制台输出,格式为:

您的周岁是:?岁,虚岁是?岁



一:初识JAVASCRIPT

1:编程语言

就是让计算机解决某个问题而使用的某种程序设计语言程序代码,并最终得到结果的过程。

计算机程序:就是计算机一系列指令的集合,而程序是我们掌握的语言来编写的,所以要控制计算机,就要用计算机语言向计算机发出指令。

2:计算机语言

计算机语言:指用于人与计算机通讯的语言,它是人与计算机之间传递信息的媒介。计算机语言可以分为三大类机器语言汇编语言、和高级语言三大类。

机器语言:实际上计算机最终执行的都是机器语言,它是由”0“和”1“组成的二进制数。

汇编语言:汇编语言和机器语言实质是相同的,都是直接对硬件操作,只不过指令采用了英文缩写的标识符,容易识别和记忆。

高级语言:高级语言主要是相对于低级语言而言,它并不是特指某一种具体的语言,而是包括了很多编程语言,常用的有C语言、C++、Java、C#、Python、PHP、JavaScript等。

总结:

- 高级语言的程序不能被计算机识别,需要经过翻译器转化为机器语言,也就是1和0;

- 编程语言和标记语言的区别,编程语言有很强的逻辑是主动的,标记语言不向计算机发出指令是被动的;

3:存储单位

位(bit):     1bit  可以保存1或者0(最小单位);

字节(Byte):   1B = 8b

千字节(KB):   1KB  = 1024B

兆字节(MB):   1MB  = 1024KB

吉字节(GB):    1GB  = 1024MB

太字节(TB):    1TB  = 1024GB

4JavaScript是什么

JavaScript是世界上最流行的语言之一,是运行在客户端的脚本语言,它不需要编译,由js引擎解释并执行,现在基于Node.j也可以进行服务端编程。

作者:布兰登·艾奇(Brendan Eich),最初命名为LiveScript,后来在与sun公司合作后改名为Javascript。

作用:表单验证、网页特效、服务端开发、桌面程序、APP、控制硬件、游戏开发。

组成:ECMAScript是由ECMA国际(原欧洲计算机制造协会)进行标准化的一门编程语言,这种语言在万维网上应用广泛,被称为javascript(网景公司)和jscript(微软公司),它规定了编程语法和基础核心知识,是所有浏览器厂商共同遵守的一套JS语法工业标准。

二:JAVASCRIPT基础

浏览器分成两个部分:渲染引擎和JS引擎。

渲染引擎:用来解析HTML与CSS,俗称内核。

JS引擎:js解释器,用来读取网页种的js代码,然后对其处理,chrome的浏览器的v8,浏览器本身是不会执行JS代码,通过JS引擎解释,交给计算机去执行(逐行解释执行)。

JS组成

JS是由三部分组成:JS语法、文档对象(DOM)、浏览器对象(BOM)。

DOM对象:是W3C组织推荐的处理可扩展标记语言的标准编程接口。通过 DOM 提供的接口可以对页面上的各种元素进行操作(大小、位置、颜色等)。

BOM对象:通过BOM可以操作浏览器窗口,比如弹出框、控制浏览器跳转、获取分辨率等。

JS初体验

JS有三种书写方式:行内、内嵌、外部。

行内:

<input type=”button” name=”username” value=”用户名” οnclick=”alert(‘你好’)”/>

缺点:

- 可读性差, 在html中编写JS大量代码时,不方便阅读;

- 引号易错,引号多层嵌套匹配时,非常容易弄混;

- 特殊情况下使用;

内嵌:

<script>

   alert(“你好”);

</script>

在老的版本中,<script type=”text/javascript”></script>,在HTML5中script默认就是js不需要再声明type=”text/javascript”。

外部:

<script src="my.js"></script>

- 利于HTML页面代码结构化,把大段 JS代码独立到 HTML 页面之外,既美观,也方便文件级别的复用

- 引用外部 JS文件的 script 标签中间不可以写代码

 - 适合于JS 代码量比较大的情况

JS注释

单行注释:// 不想被js引擎执行的,注释起来。

多行注释:/* */

/*

   第一行注释

   第二行注释

*/

JS输出语句

1:alert(msg)               浏览器弹出警示框

2:console.log(msg)          浏览器控制台输出信息,给开发人员看的

3:prompt(info,defaulttxt)     浏览器弹出输入框接收用户信息。(提示信息,默认信息)

JS变量

变量名是用来存取数据的容器,我们通过变量名来获取数据,数据是可以修改的。变量是程序在内存中申请的一块存放数据的空间。

变量的声明:

 var myname = “小明”;

var:是声明一个变量,js的关键词。

myname:声明的一个变量名,开发人员定义。

小明:给变量myname赋值。



同时声明多个变量,用”,”隔开,如下:

var name=”小明”,age=13,sex=”男”;



变量重新赋值:name=”李四”; 

总结:

- 声明变量用var,多个变量用英文逗号隔开,变量可重新赋值。

- 严格区分大小写。var name; 和 var Name; 是两个变量。

- 不能以数字开头,不能是js关键词比如 var、for、while等。

- 驼峰命名法,如myName,第一个字母小写,第二个字母大写,变量名需有意义。

数据类型

在计算机中不同的数据所需占用的存储空间是不同的,所以为了充分利用存储空间,我们为数据设置不同的数据类型,比如:“小明”,18。

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

比如:myname=”小明” //字符串

      age  = 18   //数字类型

Js判断右边值是来判断,确定变量值得类型。Js的数据类型有如下两大类:

简单数据类型:

Number,String,Boolean,Undefined,Null

Number数字类型

数字型进制

表示整数的方法有10进制,8进制和16进制。就一般使用的数值而言,16进制是指0-15的数值(0到9,a到f),在JavaScript中,在其前面加"0x",标志其为16进制,8进制是在0-7前面加"0"。

数字型范围

 最大值:Number.MAX_VALUE,这个值为: 1.7976931348623157e+308

- 最小值:Number.MIN_VALUE,这个值为:5e-324

数字的特殊值

Infinity ,代表无穷大,大于任何数值

-Infinity ,代表无穷小,小于任何数值

NaN ,Not a number,代表一个非数值

isNaN

用来判断一个变量是否为非数字的类型 ,返回 true 或者 false


var age = 21;

var isNum = isNaN(age);

   console.log(isNum);          // false

var name= "小明";

   console.log(isNaN(name));   // true ,"小明"是一个非数字

String字符串类型

字符串定义

字符串型可以是引号中的任意文本,其语法为 双引号 "" 和 单引号''。

举例:var name = ”小明”; //没有引号会报错

套引号嵌

JS 可以用单引号嵌套双引号 ,或者用双引号嵌套单引号 (外双内单,外单内双)

var myName = “我的姓名是’小明’”;

字符串转义符

字符串中有特殊字符,我们用转义符都是 \ 开头的进行转义。

\n :换行符;

\\ :斜杠\;

\’: ‘ 单引号;

\”:双引号”;

\t: tab缩进

\b:空格

字符串长度

字符串是由若干个字符组成,这些字符的数量就是字符串的长度。

如:var str = “我是高帅富!”; alert(str.length); //输出是6

字符串拼接

多个字符串之间可以使用 + 进行拼接之后得到新的字符串。

如:var str = ”路漫漫其修远兮,”,strAll=””;

strAll = str + “吾将上下而求索”;

alert(strAll );//路漫漫其修远兮,吾将上下而求索



alert(100+100);//200

alert(100+”100”); //100100

alert(“100”+”100”);//100100

总结:

- 字符串与数字相加,字符相连。

-  变量也可以和字符相加,变量不能加引号,否则会当成字符串。

布尔型Boolean

布尔类型有两个值:true 和 false ,其中 true 表示真(对),而 false 表示假(错)。

布尔型和数字型相加的时候, true 的值为 1 ,false 的值为 0。

  console.log(true + 1);  // 2

  console.log(false + 1); // 1

Undefined Null

Undefined:一个声明后没有被赋值的变量会有一个默认值undefined;

var myName;

  console.log(myName);           // undefined

  console.log('你好' + myName);  // 你好undefined

  console.log(11 + myName);     // NaN

  console.log(true + myName);   //  NaN

Null一个声明变量给 null 值,里面存的值为空;

  var myName= null;

  console.log('你好' + myName);  // 你好null

  console.log(11 + myName);     // 11

  console.log(true + myName);   //  1

获取变量类型

typeof 可用来获取检测变量的数据类型。

 var num    = 18;

 var myname = null;

 console.log(typeof num)  // 结果 number  

 console.log(typeof myname) // object  

类型转换

比如说,在表单(form)、prompt中提交的信息都是字符串信息,就无法就行加减,这时候就需要数据类型转换。

转换为字符串

toString:var num = 13; console.log(typeof num.toString());

String:   var num =13;console.log(typeof String(num));

第三种方式字符串拼接:var num = 13; console.log(typeof 13 + ‘我是字符串’);

数字类型转换

parseInt(string, radix):将string类型转成整数数字类型。

举例:

parseInt("12"); //returns 12

parseInt("12blue"); //returns 12

parseInt("12.8"); //returns 12

parseInt("blue"); //returns NaN

radix可选。表示要解析的数字的基数。该值介于 2 ~ 36 之间。

parseFloat(string) 将string类型转成浮点数数字类型。

Number(string)   将string强制转换成数字类型。

转为布尔类型

代表空、否定的值会被转换为 false  ,如 ''、0、NaN、null、undefined,其余值都会被转换为 true。


 

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('小白')); // true

    console.log(Boolean(12)); // true



总结

- 编译器:是在代码执行之前进行编译,生成中间代码文件,好比:首先把所有菜做好,才能上桌吃饭。

- 解释器:解释器是在运行时进行及时解释,并立即执行(当编译器以解释方式运行的时候,也称之为解释器)好比吃火锅,边吃边涮,同时进行。

- 标识符:就是指开发人员为变量、属性、函数取的名字,标识符不能是关键字或保留字。

- 关键字:是指 JS本身已经使用了的字,不能再用它们充当变量名、方法名。

包括:break、case、catch、continue、default、delete、do、else、finally、for、function、if、in、instanceof、new、return、switch、this、throw、try、typeof、var、void、while、with 等。

- 保留字:实际上就是预留的“关键字”,意思是现在虽然还不是关键字,但是未来可能会成为关键字,同样不能使用它们当变量名或方法名。

包括:boolean、byte、char、class、const、debugger、double、enum、export、extends、fimal、float、goto、implements、import、int、interface、long、mative、package、private、protected、public、short、static、super、synchronized、throws、transient、volatile 等。

举例练习:

     实现用户输入姓名,年龄,专业,并控制在输出台来

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
<script>
		 var realname = prompt('请输入姓名');
			var age = prompt('请输入年龄');
			var major = prompt('请输入专业');
			console.log("姓名:" + realname + " , 年龄: " + age + " , 专业:" + major)

</script>
	</body>
</html>

交换两个变量值

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script>
			var num1 ="a";
			var num2 ="b";
			var temp;// 临时变量
			console.log("num1:" + num1, "num2:" + num2);
			temp = num1;
			num1 = num2;
			num2 = temp;
			console.log("num1:" + num1, "num2:" + num2);
</script>
	</body>
</html>

输入出生年份,计算年龄

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script>
		var year = prompt("请输入年份");
			var age = 2022 - Number(year);
			console.log("年龄:" + age);
</script>
	</body>
</html>

输入周岁年龄,在控制台输出,格式为:

您的周岁是:?岁,虚岁是?岁

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script>
		var age = prompt("输入周岁年龄:");
			var str = "周岁是: " + age + ",虚岁是:" + (Number(age) + 1);
			console.log(str)
</script>
	</body>
</html>

猜你喜欢

转载自blog.csdn.net/m0_72975897/article/details/126950512