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

javascript语言入门教程,javascript教程完整版

大家好,小编来为大家解答以下问题,javascript语言入门教程,javascript教程完整版,今天让我们一起来看看吧!

前言

教你学会JavaScript分成四大部分:

教你完全学会JavaScript(基础篇--更新中)

教你完全学会JavaScript(DOM篇--完结)

教你完全学会JavaScript(BOM篇--更新中)

教你完全学会JavaScript(jQuery篇--等待)

目录

一、JS的三种书写方式

1.行内式的js(直接写到元素的内部)

2.内嵌式的js

3.外部式js

二、JS注释

三、JS的输入输出

四、JS的变量

1.变量:用于存放数据的容器,通过变量名获取数据。

2.变量使用:声明变量——赋值

​编辑3.变量的初始化

4.变量案例:

 5.变量语法扩展

 6.变量案例:交换两个变量

五、数据类型

1.简单数据类型

 2.案例练习:字符串拼接

3. 布尔型,undefinded和null

 4.获取变量的数据类型

5.数据类型转换

(1)转换成字符串

​编辑 (2)转换成数字型

(3)转换成布尔型

(4)案例1:计算年龄

(5)案例2:加法

六、JavaScript运算符

(1)算数运算符和递增递减运算符

(2)前置运算符和后置运算符的练习

(3)比较运算符

(4)逻辑运算符

(5)运算符优先级

 七、流程控制

 1、分支流程控制if

2.进入网吧案例

3.if else分支语句

4.判断闰年

5.if else if分支语句

6三元表达式

7.switch分支语句

8.switch的注意事项

9.查询水果案例

八、循环

九、Math函数

1.猜数字游戏

然后就得到了 Math.floor(Math.random() * (max - min + 1)) + min

2.随机点名

3.Math的绝对值和三个取整方法

4.封装自己的数字对象

5.Math最大值

十、数组

1.创建数组

2.翻转数组(♥)+检测是否为数组

3.添加或者是删除数组

4.筛选数组


一、JS的三种书写方式

1.行内式的js(直接写到元素的内部)

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title>
</head>
<body><!-- 行内式:点击xiaoming弹出xiaohong --><input type="button" value="xiaoming" onclick="alert('xiaohong')">
</body>
</html>

2.内嵌式的js

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><!-- 内嵌式js --><>alert('hello')</>
</head>
<body><!-- 点击xiaoming弹出xiaohong --><!-- <input type="button" value="xiaoming" onclick="alert('xiaohong')"> -->
</body>
</html>

3.外部式js

html文件

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><!-- 内嵌式js --><>// alert('hello')</><!-- 外部js -->< src="js/xuexi.js"></>
</head>
<body><!-- 点击xiaoming弹出xiaohong --><!-- <input type="button" value="xiaoming" onclick="alert('xiaohong')"> -->
</body>
</html>

js文件

alert('你是风儿,我是沙子')

二、JS注释

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><>//1.单行注释    ctrl+//*2.多行注释  shift+alt+a*/</>
</head>
<body></body>
</html>

三、JS的输入输出

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><>//这是一个输入框prompt('请输入你的爱好')// 弹出警示框alert('你的爱好是')// console 控制台输出 测试用的  按F12console.log('我是能在F12的console中看到的')</>
</head>
<body></body>
</html>

 

四、JS的变量

1.变量:用于存放数据的容器,通过变量名获取数据快码论文。

2.变量使用:声明变量——赋值

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><>var age;//声明一个age的变量var name;//声明一个name的变量var hobby;//声明一个hobby的变量var gander;//声明一个gander的变量age=18;name='小伦';hobby='写代码';gander='女';console.log(age);console.log(name);console.log(hobby);console.log(gander);</>
</head>
<body></body>
</html>

3.变量的初始化

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><>var age;//声明一个age的变量var name;//声明一个name的变量var hobby;//声明一个hobby的变量var gander;//声明一个gander的变量age=18;name='小伦';hobby='写代码';gander='女';console.log(age);console.log(name);console.log(hobby);console.log(gander);// 变量的初始化var number='12345678'console.log(number)</>
</head>
<body></body>
</html>

4.变量案例:

弹出一个输入框,提示用户输入姓名。弹出一个对话框,输出用户刚才输入的姓名。

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><>//用户输入姓名存储到myname的变量var myname=prompt('请输入你的名字:');// 输出用户名alert('你的名字是:'+myname);</>
</head>
<body></body>
</html>

 5.变量语法扩展

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><>// 更新变量(小伦变小罗)var myname='小伦';console.log(myname);var myname='小罗';console.log(myname)// 声明多个变量var age=18,name='小伦',hobby='写代码',gander='女';// 声明变量的特殊情况// 1.声明变量不赋值 undefindedvar number;console.log(number);// 2.不声明直接赋值 可以用qq=111;console.log(qq);// 3.不声明不赋值会报错console.log(address);</>
</head>
<body></body>
</html>

 6.变量案例:交换两个变量

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><>var temp;var apple1='苹果1';var apple2='苹果2';temp=apple1;apple1=apple2;apple2=temp;console.log(apple1);console.log(apple2);</>
</head>
<body></body>
</html>

五、数据类型

数据类型的简介:不同的数据所需占用的存储空间不同的。

1.简单数据类型

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><>var num=10;var PI=3.14;// 八进制  0-7在程序数字前面加0表示八进制var num1=010;// 010 转换成十进制 等于 8console.log(num1);var num2=012;console.log(num2);// 十六进制 0-9 a-fvar num3=0x9;//结果是9console.log(num3);var num4=0xa;//结果是10console.log(num4);//数字型的最大值console.log(Number.MAX_VALUE);//1.7976931348623157e+308//数字型的最小值console.log(Number.MIN_VALUE);//5e-324//无穷大console.log(Number.MAX_VALUE*2);//Infinity//无穷小console.log(-Number.MAX_VALUE*2);//-Infinity//非数字console.log('小伦'-100);//NaN//isNaN 用来判断一个变量是否为非数字的类型,返回true或者falseconsole.log(isNaN('小伦'));//trueconsole.log(isNaN(12));//false//字符串型String 单引号和双引号里面的都是字符串型var str1='12';var str2='我是爱吃"臭豆腐"的小伦';console.log(str1);console.log(str2);//转义符的作用var str3='我\'是\"爱\\吃"臭豆腐"\n的小\t伦';console.log(str3);// 检测获取字符串长度 lengthvar str='my name is andy';console.log(str.length);//字符串的拼接console.log('我是'+'小伦');console.log('小伦'+18);console.log('小伦'+true);console.log(12+12);console.log('12'+12);</>
</head>
<body></body>
</html>

 2.案例练习:字符串拼接

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><>var age=prompt('请输入你的年龄:');var str='你今年已经'+age+'岁';alert(str);</></head>
<body></body>
</html>

3. 布尔型,undefinded和null

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><>var flag=true;var flag1=false;console.log(flag+1);//true参加加法运算当成1来看 2console.log(flag1+1);//false参加加法运算当成0来看 1// 如果一个变量声明没赋值 就是undefinded未定义数据类型var str;console.log(str);//undefindedvar variable=undefined;console.log(variable+'hello');//undefindedhelloconsole.log(variable+1)//NaN undefinded和数字相加最后的结果是NaN//null空值var space=null;console.log(space+'hello');//nullhelloconsole.log(space+1);//1</>
</head>
<body></body>
</html>

 4.获取变量的数据类型

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><>var num=10;console.log(typeof num);//numbervar str='hello';console.log(typeof str);//stringvar flag=true;console.log(typeof flag);//booleanvar vari=undefined;console.log(typeof vari);//undefindedvar timer=null;console.log(typeof timer);//object // 举个例子var age=prompt('请输入你的年龄');console.log(age);console.log(typeof age);//string</></head>
<body></body>
</html>

5.数据类型转换

(1)转换成字符串
 (2)转换成数字型

(3)转换成布尔型

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><>// (1)转换成字符串//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+'');//(2)转换成数字型// 1.parseIntvar age=prompt('请输入你的年龄:');console.log(parseInt(age));console.log(parseInt('3.14'));//取整 3console.log(parseInt('3.94'));//取整 3console.log(parseInt('100px'));//去掉单位 100// 2.parseFloat把字符型转换为数字型 得到小数 浮点数console.log(parseFloat('3.14'));//3.14console.log(parseFloat('3.94'));//3.94console.log(parseFloat('100px'));//去掉单位 100//3.利用Numbervar str='12';console.log(Number(str));// 4.利用算数运算符-*/console.log('123'-'120');//两个字符型的转换成数字型的</>
</head>
<body></body>
</html>

(4)案例1:计算年龄
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><>var year=prompt('请输入你的出生年份:');var age=2023-year;alert('你今年已经'+age+'岁了');</>
</head>
<body></body>
</html>

 

(5)案例2:加法
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><>var num1=prompt('请你输入第一个值:');var num2=prompt('请你输入第二个值:');// 因为上面取到的值是字符串型的,我们要把它们转换成数字型的才可以相加var result=parseFloat(num1)+parseFloat(num2);alert('相加的结果是:'+result);</>
</head>
<body></body>
</html>

 

六、JavaScript运算符

(1)算数运算符和递增递减运算符

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><>// 1.算数运算符console.log(1+1);console.log(1-1);console.log(1/1);console.log(1*1);console.log(4%2);//0console.log(3%5);//3console.log(0.07+0.3);//浮点数精度有问题// 2.表达式:是由数字、运算符、变量等组成的式子console.log(1+1);//2就是返回值// 3.递增和递减的运算符,(++)(--)放前面是前置运算符,放后面是后置运算符console.log('3.前置后置运算符对比:')//前置运算符:先自加一 然后返回值var num1=10;console.log(++num1 + 10);//后置运算符:先放回原值 后自加一var age=10;console.log(age++ + 10);//先把原值返回10 +10,然后自加1console.log(age);</>
</head>
<body></body>
</html>

(2)前置运算符和后置运算符的练习

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><>// 前置运算符var a=10;++a;//a=11var b=++a + 2;//a=12 console.log(b);//后置运算符var c=10;c++;//11var d=c++ + 1;//c++=11 c=12console.log(d); //13var e=10;var f=e++ + ++e;//e++=10 ++e=11 ==> 21 ==> 22console.log(f);</>
</head>
<body></body>
</html>

(3)比较运算符

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><>// 双等符号与三等运算符console.log(18=='18');//trueconsole.log(18==='18');//false</>
</head>
<body></body>
</html>

(4)逻辑运算符

       短路运算(逻辑中断):当有多个表达式(值)时,左边的表达式值可以确定结果时,就不再继续运算右边的表达式的值了。

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><>// 逻辑与短路运算:表达式1结果为真则返回表达式2console.log(123 && 456);//除了0其他数字都是真的 456console.log(0 && 456);//0//逻辑或短路运算: 如果表达式1结果为真则返回表达式1;如果表达式1结果为假则返回表达式2;console.log(123 || 456);//123console.log(0 || 456);//456</>
</head>
<body></body>
</html>

(5)运算符优先级

 七、流程控制

 1、分支流程控制if


<!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><>// 1. if 的语法结构   如果if// if (条件表达式) {//     // 执行语句// }// 2. 执行思路  如果 if 里面的条件表达式结果为真 true 则执行大括号里面的 执行语句 // 如果if 条件表达式结果为假 则不执行大括号里面的语句 则执行if 语句后面的代码// 3. 代码体验if (3 < 5) {alert('沙漠骆驼');}</>
</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"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>Document</title><>//         弹出 prompt 输入框,用户输入年龄, 程序把这个值取过来保存到变量中// 使用 if 语句来判断年龄,如果年龄大于18 就执行 if 大括号里面的输出语句var age = prompt('请输入您的年龄:');if (age >= 18) {alert('go!');}</>
</head><body></body></html>

3.if else分支语句


<!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><>// 1. 语法结构  if 如果  else 否则// if (条件表达式) {//     // 执行语句1// } else {//     // 执行语句2 // }// 2. 执行思路 如果表达式结果为真 那么执行语句1  否则  执行语句2// 3. 代码验证var age = prompt('请输入您的年龄:');if (age >= 18) {alert('开开心心上网');} else {alert('滚不要来');}// 5. if里面的语句1 和 else 里面的语句2 最终只能有一个语句执行  2选1// 6.  else 后面直接跟大括号</>
</head><body></body></html>

4.判断闰年


<!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><>//         算法:能被4整除且不能整除100的为闰年(如2004年就是闰年,1901年不是闰年)或者能够被 400 整除的就是闰年// 弹出prompt 输入框,让用户输入年份,把这个值取过来保存到变量中// 使用 if 语句来判断是否是闰年,如果是闰年,就执行 if 大括号里面的输出语句,否则就执行 else里面的输出语句// 一定要注意里面的且 &&  还有或者 || 的写法,同时注意判断整除的方法是取余为 0var year = prompt('请您输入年份:');if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {alert('您输入的年份是闰年');} else {alert('您输入的年份是平年');}</>
</head><body></body></html>

5.if else if分支语句


<!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><>//  伪代码       按照从大到小判断的思路// 弹出prompt输入框,让用户输入分数(score),把这个值取过来保存到变量中// 使用多分支 if else if 语句来分别判断输出不同的值var score = prompt('请您输入分数:');if (score >= 90) {alert('宝贝,你是我的骄傲');} else if (score >= 80) {alert('宝贝,你已经很出色了');} else if (score >= 70) {alert('你要继续加油喽');} else if (score >= 60) {alert('孩子,你很危险');} else {alert('熊孩子,我不想和你说话,我只想用鞭子和你说话');}</>
</head><body></body></html>

6三元表达式


<!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><>//         用户输入0~59之间的一个数字// 如果数字小于10,则在这个数字前面补0,(加0 拼接) 否则  不做操作// 用一个变量接受这个返回值,输出var time = prompt('请您输入一个 0 ~ 59 之间的一个数字');// 三元表达式   表达式 ? 表达式1 :表达式2 var result = time < 10 ? '0' + time : time; //   把返回值赋值给一个变量alert(result);</>
</head><body></body></html>

7.switch分支语句


<!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><>// 1. switch 语句也是多分支语句 也可以实现多选1// 2. 语法结构 switch 转换、开关  case 小例子或者选项的意思// switch (表达式) {//     case value1://         执行语句1;//         break;//     case value2://         执行语句2;//         break;//         ...//         default://             执行最后的语句;// }// 3. 执行思路  利用我们的表达式的值 和 case 后面的选项值相匹配 如果匹配上,就执行该case 里面的语句  如果都没有匹配上,那么执行 default里面的语句// 4. 代码验证switch (8) {case 1:console.log('这是1');break;case 2:console.log('这是2');break;case 3:console.log('这是3');break;default:console.log('没有匹配结果');}</>
</head><body></body></html>

8.switch的注意事项


<!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><>// switch注意事项var num = 1;switch (num) {case 1:console.log(1);case 2:console.log(2);case 3:console.log(3);break;}// 1. 我们开发里面 表达式我们经常写成变量// 2. 我们num 的值 和 case 里面的值相匹配的时候是 全等   必须是值和数据类型一致才可以 num === 1// 3. break 如果当前的case里面没有break 则不会退出switch 是继续执行下一个case</>
</head><body></body></html>

9.查询水果案例


<!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><>//         弹出 prompt 输入框,让用户输入水果名称,把这个值取过来保存到变量中。// 将这个变量作为 switch 括号里面的表达式。// case 后面的值写几个不同的水果名称,注意一定要加引号 ,因为必须是全等匹配。// 弹出不同价格即可。同样注意每个 case 之后加上 break ,以便退出 switch 语句。// 将 default 设置为没有此水果。var fruit = prompt('请您输入查询的水果:');switch (fruit) {case '苹果':alert('苹果的价格是 3.5/斤');break;case '榴莲':alert('榴莲的价格是 35/斤');break;default:alert('没有此水果');}</>
</head><body></body></html>

八、循环

(更新中)

九、Math函数

1.猜数字游戏

Math.random()给我们返回一个在0-1范围内的随机数。

但我们不想要一个随机的小数;我们想要一个任意随机数。我们可以通过我们的Math.random()的结果乘以任意数值区间得到它。举个例子,如果我们想要一个在0-10之间的随机数,我们需要乘以10,然后结果中的0.4会变成4。如果我们想要一个7-11的随机数,即(7,8,9,10,11)。

这个结果我们可以通过Math.random() * (max - min + 1)来得到它。

我们不仅仅想要一个小数,我们想要一个整数。Math.floor()用来砍掉小数后的数值,让3.14159变成了3。

这就是我们通过 Math.floor(Math.random() * (max - min + 1)).得到的。

现在我们得到了一个从0开始到我们定义的任意范围的数据。我们想要一个介于7-11的数值,但是现在只得到了0-5。为了把它变成7-10,我们只需要把任意我们得到的值加上7。7是我们的最小值。

然后就得到了 Math.floor(Math.random() * (max - min + 1)) + min


<!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><>// 猜数字游戏// 1.随机生成一个1~10 的整数  我们需要用到 Math.random() 方法。// 2.需要一直猜到正确为止,所以需要一直循环。// 3.while 循环更简单// 4.核心算法:使用 if  else if 多分支语句来判断大于、小于、等于。function getRandom(min, max) {return Math.floor(Math.random() * (max - min + 1)) + min;}var random = getRandom(1, 10);while (true) { // 死循环var num = prompt('你来猜? 输入1~10之间的一个数字');if (num > random) {alert('你猜大了');} else if (num < random) {alert('你猜小了');} else {alert('你好帅哦,猜对了');break; // 退出整个循环结束程序}}// 要求用户猜 1~50之间的一个数字 但是只有 10次猜的机会</>
</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"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>Document</title><>// 1.Math对象随机数方法   random() 返回一个随机的小数  0 =< x < 1// 2. 这个方法里面不跟参数// 3. 代码验证 console.log(Math.random());// 4. 我们想要得到两个数之间的随机整数 并且 包含这2个整数// Math.floor(Math.random() * (max - min + 1)) + min;function getRandom(min, max) {return Math.floor(Math.random() * (max - min + 1)) + min;}console.log(getRandom(1, 10));// 5. 随机点名  var arr = ['张三', '三丰', '疯子', '小路', '小礼帽', '小猪'];// console.log(arr[0]);console.log(arr[getRandom(0, arr.length - 1)]);</>
</head><body></body></html>

3.Math的绝对值和三个取整方法


<!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><>// 1.绝对值方法console.log(Math.abs(1)); // 1console.log(Math.abs(-1)); // 1console.log(Math.abs('-1')); // 隐式转换 会把字符串型 -1 转换为数字型console.log(Math.abs('hello')); // NaN // 2.三个取整方法// (1) Math.floor()   地板 向下取整  往最小了取值console.log(Math.floor(1.1)); // 1console.log(Math.floor(1.9)); // 1// (2) Math.ceil()   ceil 天花板 向上取整  往最大了取值console.log(Math.ceil(1.1)); // 2console.log(Math.ceil(1.9)); // 2// (3) Math.round()   四舍五入  其他数字都是四舍五入,但是 .5 特殊 它往大了取  console.log(Math.round(1.1)); // 1console.log(Math.round(1.5)); // 2console.log(Math.round(1.9)); // 2console.log(Math.round(-1.1)); // -1console.log(Math.round(-1.5)); // 这个结果是 -1</>
</head><body></body></html>

4.封装自己的数字对象


<!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><>// 利用对象封装自己的数学对象  里面有 PI 最大值和最小值var myMath = {PI: 3.141592653,max: function() {var max = arguments[0];for (var i = 1; i < arguments.length; i++) {if (arguments[i] > max) {max = arguments[i];}}return max;},min: function() {var min = arguments[0];for (var i = 1; i < arguments.length; i++) {if (arguments[i] < min) {min = arguments[i];}}return min;}}console.log(myMath.PI);console.log(myMath.max(1, 5, 9));console.log(myMath.min(1, 5, 9));</>
</head><body></body>

5.Math最大值


<!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><>// Math数学对象 不是一个构造函数 ,所以我们不需要new 来调用 而是直接使用里面的属性和方法即可console.log(Math.PI); // 一个属性 圆周率console.log(Math.max(1, 99, 3)); // 99console.log(Math.max(-1, -10)); // -1console.log(Math.max(1, 99, '小伦')); // NaNconsole.log(Math.max()); // -Infinity</>
</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"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>Document</title><>// 创建数组的两种方式// 1. 利用数组字面量var arr = [1, 2, 3];console.log(arr[0]);// 2. 利用new Array()// var arr1 = new Array();  // 创建了一个空的数组// var arr1 = new Array(2);  // 这个2 表示 数组的长度为 2  里面有2个空的数组元素 var arr1 = new Array(2, 3); // 等价于 [2,3]  这样写表示 里面有2个数组元素 是 2和3console.log(arr1);</>
</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"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>Document</title><>// 翻转数组function reverse(arr) {// if (arr instanceof Array) {if (Array.isArray(arr)) {var newArr = [];for (var i = arr.length - 1; i >= 0; i--) {newArr[newArr.length] = arr[i];}return newArr;} else {return 'error 这个参数要求必须是数组格式 [1,2,3]'}}console.log(reverse([1, 2, 3]));console.log(reverse(1, 2, 3));// 检测是否为数组// (1) instanceof  运算符 它可以用来检测是否为数组var arr = [];var obj = {};console.log(arr instanceof Array);console.log(obj instanceof Array);// (2) Array.isArray(参数);  H5新增的方法  ie9以上版本支持console.log(Array.isArray(arr));console.log(Array.isArray(obj));</>
</head><body></body></html>

3.添加或者是删除数组


<!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><>// 添加删除数组元素方法// 1. push() 在我们数组的末尾 添加一个或者多个数组元素   push  推var arr = [1, 2, 3];// arr.push(4, 'pink');console.log(arr.push(4, 'pink'));console.log(arr);// (1) push 是可以给数组追加新的元素// (2) push() 参数直接写 数组元素就可以了// (3) push完毕之后,返回的结果是 新数组的长度 // (4) 原数组也会发生变化// 2. unshift 在我们数组的开头 添加一个或者多个数组元素console.log(arr.unshift('red', 'purple'));console.log(arr);// (1) unshift是可以给数组前面追加新的元素// (2) unshift() 参数直接写 数组元素就可以了// (3) unshift完毕之后,返回的结果是 新数组的长度 // (4) 原数组也会发生变化// 3. pop() 它可以删除数组的最后一个元素  console.log(arr.pop());console.log(arr);// (1) pop是可以删除数组的最后一个元素 记住一次只能删除一个元素// (2) pop() 没有参数// (3) pop完毕之后,返回的结果是 删除的那个元素 // (4) 原数组也会发生变化// 4. shift() 它可以删除数组的第一个元素  console.log(arr.shift());console.log(arr);// (1) shift是可以删除数组的第一个元素 记住一次只能删除一个元素// (2) shift() 没有参数// (3) shift完毕之后,返回的结果是 删除的那个元素 // (4) 原数组也会发生变化</>
</head><body></body></html>

4.筛选数组


<!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><>// 有一个包含工资的数组[1500, 1200, 2000, 2100, 1800],要求把数组中工资超过2000的删除,剩余的放到新数组里面var arr = [1500, 1200, 2000, 2100, 1800];var newArr = [];for (var i = 0; i < arr.length; i++) {if (arr[i] < 2000) {// newArr[newArr.length] = arr[i];newArr.push(arr[i]);}}console.log(newArr);</>
</head><body></body></html>

5.数组排序


<!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><>// 数组排序// 1. 翻转数组var arr = ['pink', 'red', 'blue'];arr.reverse();console.log(arr);// 2. 数组排序(冒泡排序)var arr1 = [13, 4, 77, 1, 7];arr1.sort(function(a, b) {//  return a - b; 升序的顺序排列return b - a; // 降序的顺序排列});console.log(arr1);</>
</head><body></body></html>

6.获取数组元素索引


<!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><>// 返回数组元素索引号方法  indexOf(数组元素)  作用就是返回该数组元素的索引号 从前面开始查找// 它只返回第一个满足条件的索引号 // 它如果在该数组里面找不到元素,则返回的是 -1  // var arr = ['red', 'green', 'blue', 'pink', 'blue'];var arr = ['red', 'green', 'pink'];console.log(arr.indexOf('blue'));//-1// 返回数组元素索引号方法  lastIndexOf(数组元素)  作用就是返回该数组元素的索引号 从后面开始查找var arr = ['red', 'green', 'blue', 'pink', 'blue'];console.log(arr.lastIndexOf('blue')); // 4</>
</head><body></body></html>

http://www.xdnf.cn/news/11737.html

相关文章:

  • 职业价值观测评(舒伯修订版)
  • 抢先体验Windows Technical Preview(Windows 10)和Windows Server Technical Preview
  • suse linux enterprise 10下载,在suse linux enterprise 10 中安装 oracle 10g
  • ASP.NET网站制作
  • Jbuilder8开发J2ee学习笔记(7) (转)
  • 电脑死机是什么原因及解决方法
  • cpu性能测试软件 国际象棋,国际象棋测试
  • 地球毁灭日.3九星连珠
  • 普通下载链接转换为迅雷、快车、旋风下载链接
  • WPA2破解教程(详细步骤)
  • 10个技巧,3分钟教会你高效寻找开源项目
  • 全国DNS服务器IP地址【电信、网通、铁通】
  • 摄影网页设计制作 简单静态HTML网页作品 WEB静态摄影网站作业成品 学生DW摄影网站模板
  • Multitouch for Mac v1.27.31 - 多点触控手势增强神器
  • Element的el-table实现拖拽改变某一行的高度
  • 好用的博客评论系统 Valine 使用及避坑指南
  • 如何免费获得可以升级的nod32官方中文版杀毒软件 - 非淡泊无以明志,非宁静无以致远。 - C++博客...
  • GPS介绍(一)—基本工作原理
  • phpnow如何卸载mysql_phpnow卸载方法 完全删除或卸载PHPnow环境配置包(图解)
  • WINDOWS 7全系列验证码
  • phpstorm的简单配置
  • 。iBm T43 程序组 IBM软件详解
  • [附源码]java毕业设计基于新高考模式下的排课系统
  • ESET NOD32 升级 激活码 用户名和密码~MF111
  • c语言万年历带农历
  • [数位dp] 计数问题(模板题+数位dp)
  • 一键彻底清理!解密如何清理电脑C盘垃圾的绝佳方法
  • MyEclipse6.5下载地址(含注册码)
  • 如何隐藏IE地址栏
  • 元搜索推荐:比比猫!(马丁编辑)