2018-11-29

11js关系运算符

<!DOCTYPE html>

<html>

<head>

<title>11js关系运算符</title>

<meta http-equiv="content-type" content="text/html; charset=utf-8"/>

</head>

<body>

</body>

<script>

/*关系运算符存在的意义:1、默认情况下,我们在程序中写的每一句正确代码都会被执行,但是很多时候,我们想在某个条件成立的情况才执行某一段代码。所以在这种情况的话可以就要使用条件语句来完成。

关系运算符的结果只有true  和  false 两个值。也是就是Boolean值。

>(大于)  <(小于)  ==(等于)  >=(大于等于)  <=(小于等于)

=== (值和类型相等)

*/

var a = 100, b = 100;

console.log(a<b); //false 

document.write(a<b);

document.write("<br/>");

console.log(a>b); //false

document.write(a>b); //*变量时才可以做字符串的拼接,表达式不能做拼接。

document.write("<br/>");

console.log(a<=b); //true

document.write(a<=b);

document.write("<br/>");

console.log(a>=b); //true

document.write(a>=b);

document.write("<br/>");

console.log(a==b); //true

document.write(a==b);

document.write("<br/>");

console.log(a===b); //true 这个是数值和类型都相等的情况才是true

document.write(a===b);

document.write("<br/><hr size='4'>");

var c ="100";

console.log(a<c); //false 

document.write(a<c);

document.write("<br/>");

console.log(a>c); //false 

document.write(a>c);

document.write("<br/>");

console.log(a>=c); //true 

document.write(a>=c);

document.write("<br/>");

console.log(a<=c); //true 

document.write(a<=c);

document.write("<br/>");

console.log(a==c); //true 

document.write(a==c);

document.write("<br/>");

console.log(a===c); //false  c是字符串类型  a是数据类型 两者的类型不相等

document.write(a===c);

document.write("<br/><br/>");

//只是相对一侧数值一侧不是数值 对于非数值进行比较时,会将其转换为数字然后在比较。

console.log(1>false); //true

document.write(1>false); //true  false 转换后是 0

document.write("<br/>");

console.log(1>true); //false

document.write(1>true); //false  true  转换后是 1

document.write("<br/>");

console.log(1>null); //true

document.write(1>null); //true null 转换后是 0

document.write("<br/>");

console.log(1>undefined); //false  undefined 转换后是 NaN

document.write(1>undefined); //true undefined

document.write("<br/>");

var s=Number(null);

console.log(s);

var r =Number(undefined);

console.log(r);

console.log(1=="1");

document.write(1=="1");

document.write("<br/>");

console.log(1=="1q");

var t = Number("1q"); //这样的是转换后是 NaN

document.write(t);

document.write("<br/>");

console.log(1=="a1");

var t1 = Number("a1"); //这样的是转换后是 NaN

document.write(t1);

document.write("<br/>");

//如果特号两侧的值都是字符串时,不会将其转换为数字进行比较,而会分别比较字符串中字符的unicode编码。

console.log("a">"b"); //是先第一位比较后,如果相等,再比较第二位。如果第一位不相等。那个值大那个就大。false

console.log("ab"=="ba"); //false

//null  undefined NaN 比较  在前面时正常是不会转换的。 

console.log(null<1); //true

console.log(null == 0); //false

console.log(undefined==0) //false

console.log(NaN == NaN); //false  *重点

console.log(null == null) //true

console.log(undefined == undefined) //true

//isNaN() 定义是否是数字。如果是数字就得false  如果不是数字就得true

var aa=100;

var t2 =isNaN(aa);

console.log(t2);

document.write("<br/><br/>" +t2); //false

var ab="123";

var t3 = isNaN(ab);

document.write("<br/>" + t3); //false

console.log(null ==undefined); //true

console.log(null === undefined); //false

</script>

</html>

12js逻辑运算符-逻辑与

<!DOCTYPE html>

<html>

<head>

<title>js逻辑运算符-逻辑与</title>

<meta http-equiv="content-type" content="text/html; charset=utf-8"/>

</head>

<body>

</body>

<script>

/*逻辑与 格式:条件A && 条件B

结果:

(1)当&与&&同为逻辑运算符时,它们都用于连接两个Boolean类型的表达式,当&和&&的两端表达式同时为真时,表达式的结果为真,只要有一端为假,那么表达式结果为假。

&和&&的区别:

单&时,左边无论真假,右边都进行运算;

双&时,如果左边为真,右边参与运算,如果左边为假,那么右边不参与运算。

(2)当|和||的两端表达式同时为假时,表达式的结果为假,只要有一端为真,那么表达式结果为真。

“|”和“||”的区别:

单或时,左边无论真假,右边都进行运算;

双或时,左边为真,右边不参与运算。

注:这里的左边右边值逻辑运算符的左边右边

*/

var result = (10>9) && (7>100); //两者都true 就是true  只要一者为false 结果是false;  如果左边为真,右边参与运算,如果左边为假,那么右边不参与运算。

//   true      false

console.log(result); // false

//短路写法

/*

(7>3) && alert("我是正常人。"); //可以运行。

true && alert("我是也正常人。"); //可以运行。

false && alert("我不是正常人啊!!!!!"); //非主流的写法  这里是永远不用输出。

0 && alert("ouyangqinbin-linyin"); //非主流的写法  这里是永远不用输出。*/

//对于非Boolean 类型的数值,逻辑与会自动将其转换为Boolean类型来判断。

//如果条件A不成立,则返回条件A的数值本身

//如果条件A不成立,不管条件B成不成立都返回条件B数值本身。

var result1 = 123 && "abc";

console.log(result1); //abc

var result2 = 0 && "abc";

console.log(result2); //0

var result3 = 123 && "abc" && 0; //如果左边成立就会把右边的输出。要一层层的对比下去,如果左边不成立就会输出左边的值。

console.log(result3);

var result4 = 2 && 0 && "abc";

console.log(result4); //0

//逻辑或 当条件A或条件B只要有一个成立时(也包括条件A和条件B都成立),结果就为true;只有当条件A和条件B都不成立时,结果才为false;

//口诀:一真为真。

/* 逻辑或运算过程

总是先判断条件A是否成立。

如果条件A成立,就不会再去判断条件B是否成立,因为条件A已经成立了,不管条件B如何结果肯定是1,也就是true

如果条件A不成立,接着再判断条件B是否成立;如果条件B成立,“条件A || 条件B”的结果就为true,如果条件B不成立,结果就为false

两个都是false,则返回false

*/

var x = "a" || "b";

console.log(x); //a //如果左边有true ,就直接输出左边的值。

var x = "" || "b";

console.log(x); //b //如果左边是false ,就要看右边,如果右边是true ,就输出右边的值。

var x = 0 || "";

console.log(x); //0 //如果右边是false ,就输出右边的值。

//老师的例子

var x = (4>7) || (3>10);

console.log(x); //false

var x = 0 || (3>10);

console.log(x); //false  不会输出表达式。

var x = 123 || "abc";

console.log(x);

var x =(6>4) || "123";

console.log(x); //true 不会输出表达式。

//短路测试

(7<3) || alert("我是否可以输出"); //可以我可以输出。 条件A 不成立运行 条件B.

(7>4) || alert("我是否可以输出"); //不可以输出。 条件A 成立 就不会运行条件B了。

//对于非Boolean 类型的数值,逻辑与会自动将其转换为Boolean类型来判断。

//如果条件A不成立,则不管条件B成不成立都返回条件B数值本身。

//如果条件A成立,则返回条件A的数值本身。

var result5 = 123 || "abc";

console.log(result5); //条件A成立,则返回条件A的数值本身。

var result6 = "abc" || 123;

console.log(result6); //如果条件A成立,则返回条件A。(除了表达式)

var result7 = true || "123";

console.log(result7); //返回值是:true;

var result8 = (7>3) || "1234";

console.log(result8); //条件A如果是表达式,当表达式的值成立(true) 就返回true。如果是表达式的值不成立(false),则返回条件B的值。

var result9 = (7<5) || "123";

var result10 = (7<5) || false;

var result11 = (7<5) || (4>10);

console.log(result9);

console.log(result10);

console.log(result11);

//逻辑非  格式: !条件A

/*对条件A进行取反,若条件A成立,结果就为false;若条件A不成立,结果就为true,也就是说:真的变假,假的变真。

口诀:真变假,假变真。

对一个值进行两次取反,它不会变化。

对非布尔值进行元素,则会将其转换为布尔值,然后再取反。

*/

var result = (3>1);

console.log(result); //true

var result = !(3>1);

console.log(result); //false

//注意:1、对一个值进行两次取反,它不会变化。主要是对布尔类型或表达式。

var res = !!100;

console.log(res);

//对非布尔类型进行元素,则会将其转换为布尔值,然后再取后反

var num = 10;

var res = !num;

console.log(res); //false  先将10转换为true,然后再取反。 其他类型转换成布尔类型只要在它前面加上两个逻辑非,就可以了。

var res = (4>2);

console.log(res);

console.log(!res);

</script>

</html>

13js逗号运算符

<!DOCTYPE html>

<html>

<head>

<title>13js逗号运算符</title>

<meta http-equiv="content-type" content="text/html;charset=utf-8"/>

</head>

<body>

</body>

<script>

/*逗号运算符:在javascript中逗号“,” 也是一种运算符,称为逗号运算符,其功能是把多个表达式连接起来组成一个表达式,称为逗号表达式。

表达式1,表达式2,-----表达式n.

求值过程 把最后一个逗号表达式的值传到变量中。

*/

var num1,num2,num3,num4,num5;

var result = (num1 = 3+2, num2 = 3+7, num3 = 2+4, num4 = 3+4, num5 = 6+8);

console.log(result);

/* 三元运算符

格式:条件表达式?语句1:语句2; 条件成立就执行语句1 条件不成立就执行语句2.  问号? 冒号:分号;

*/

//3<6 ? alert("我是对的"):alert("我是错的") //这里一定要注意不能有逗号。

null ? alert("我是对的"): alert("我是错的")

"abc" ? alert("我是abc"): alert("我不是abc")

</script>

</html>

14js弹框输入的方式

<!DOCTYPE html>

<html>

    <head>

    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>

    <title>14js弹框输入的方式</title>

    </head>

    <body>

    </body>

    <script type="text/javascript">

            /*

                  window.prompt()

                弹出一个输入框,可以输入内容

            */

            // var messageStr = "提示信息";

            // var defaultStr = "输入框内默认值";

            //点击取消 返回null

            //如果什么都不写 并 点击确定的话,返回一个空字符串

            // var content = window.prompt(messageStr, defaultStr);

            //  var content = prompt(messageStr,defaultStr);

            // document.write(content);

            // 用户从键盘输入3个整数,找出最大值并输出

            //定义四个变量。

            var num1,num2,num3,max;

            //2、利用prompt()接收用户输入的值

            num1 = Number(prompt("请输入一个整数值"));

            num2 = Number(prompt("请输入一个整数值"));

            num3 = Number(prompt("请输入一个整数值"));

            document.write("num1 =" + num1 +"<br>");

            document.write("num2 =" + num2 +"<br>");

            document.write("num3 =" + num3 +"<br>");

            //3、两两比较。把最大值赋值到变量中。

            num1 = num1>num2 ? num1 : num2;           

            max = num1>num3 ? num1 : num3;

            //4、输出最大值。

            document.write(max);

            var num4 = alert("这是最大的值:" +max);  //没有返回值。

            console.log(num4);

          // max = num1 > num3 ? alert("这是最大的值" + num1) : alert("这是最大的值" + num3);

    </script>

</html>

15js流程的控制

<!DOCTYPE html>

<html>

<head>

<title>15js流程的控制</title>

<meta http-equiv="content-type" content="text/html; charset=utf-8"/>

</head>

<body>

</body>

<script>

//流程控制基本概念

/*

1、默认情况下,程序的运行流程是这样的:运行程序后,系统会按书写从上至下顺序执行程序中的每一行代码,但是这并不能满足我们所有的开发需求。

2、实际开发中,我们需要根据不同的条件执行不同的代码或者重复执行某一段代码。

3、为了方便我们控制程序的运行流程,JavaScript提供3种流程结构,不同的流程结构可以实现不同的运行。这3种流程结构分别是顺序、选择、循环三种基本控制结构构造。

*/

//if

//switch

//循环

//a、while 循环

//b、do while 循环

//c、for 循环

</script>

</html>

16js流程的控制

<!DOCTYPE html>

<html>

<head>

<title>16js流程的控制</title>

<meta http-equiv="content-type" content="text/html; charset=utf-8"/>

</head>

<body>

</body>

<script>

// if 语句

/*

1、如果条件表达式为真,执行语句块1,否则不执行。

2、如果条件表达式为真,执行语句块1,否则执行语句2。

3、如果条件表达式1为真,则执行语句1,否则判断条件表达式2,如果为真执行语句块2,否则再决断条件表达式3,如果真执行语句块3,当表达式1、2、3都不满足,会执行最后一个else语句。

4、注意点

格式1:if(条件){

条件成立执行语句块

}

格式2:if(条件){

条件成立执行语句块

}else{

条件不成立时执行语句块

}

格式:if(条件1){

条件成立执行语句块

}else if(条件2){

条件2成立执行语句块

}eles{

条件1、2不成立时执行语句块

}

格式:if(条件1){

if(条件2){

条件2成立执行语句块

}else if(条件3){

条件3成立执行语句块

}eles{

条件2、3 不成立执行语句块

}

}else{

条件1不成立执行语句块

}

*/

var age;

age =Number(prompt("请输入用户的年龄"));

//判断

if(age >= 18){

document.write("用户已经是成年人了。");

}

if(age >=18){

document.write("可以上网了");

}else{

document.write("不可以上网,回家吃饭。");

}

if(age >=18){

if(age>=50){

document.write("老年人");

}else if(age>=25){

document.write("中年人");

}else{

document.write("成年人");

}

}else{

document.write("未成年人");

}

/*注意项 

1、如果只有一条语句时if后面的大括号可以省略。(不见意使用)

2、分号“;”也是一条语句,空语句。"if(条件);{}不可使用"

3、if else 是一个整体,else匹配if的时候匹配离它最近的一个if

4、对于非Boolean类型的值,会先转换为Boolean类型后再判断。

5、判断变量与常量问题。最好是把常量放在变量的前面。

6、if 语句可以嵌套使用。

*/

var sex = "男";

if(sex == "男") document.write("<br/>"+"我是男生" +"<br/>"); //可以运行但不见意使用。

if(sex == "女");{document.write("我是欧阳勤斌") +"<br/>"} //这样写是错误的。它没有执行到大括号中的内容。

var num =Number(prompt("请输入数值"));

if(0!=num){

if(1==num){

document.write("我是1号");

}else if(2==num){

document.write("我是2号");

}else{

document.write("我不是1或2号");

}

}else{

if(3==num){

document.write("我是3号");

}else if(4==num){

document.write("我是4号");

}else{

document.write("我是0号");

}

}

//继续

alert("结束!!!!!");

</script>

</html>

16js流程控制练习1

<!DOCTYPE html>

<html>

<head>

<title>16js流程控制练习1</title>

<meta http-equiv="content-type" content="text/html; charset=utf-8"/>

</head>

<body>

</body>

<script>

//从键盘输入一个整数,判断其是否是偶数,如果是偶数就输出YES,否则输出NO

//1、定义一个变量接收输入值。

var number1;

//number1 = Number(prompt("请输入一个整数值"));

number1 = +(prompt("请输入一个整数值"));

//2、合法性验证

if(isNaN(number1)){

alert("输入的内容有误");

}else{

//2、如何判断是偶数 变量%2==0 就是偶数。

// if(number1%2===0){

// document.write(number1);

// document.write("YES");

// }else{

// document.write(number1);

// document.write("NO");

// }

//可以用三元运算符

(number1%2===0)?document.write("YES"):document.write("NO");

}

//3、输出结果

//接收用户输入的1-7的整数,根据用户输入的整数,输出对应的星期几。

</script>

</html>

16js流程控制if练习2

<!DOCTYPE html>

<html>

<head>

<title>16js流程控制if练习2</title>

<meta http-equiv="content-type" content="text/html; charset=utf-8"/>

</head>

<body>

</body>

<script type="text/html">

//接收用户输入的1-7的整数,根据用户输入的整数,输出对应的星期几。

//第1种写法

//1、定义一个变量 num1

var num1;

//2、接收变量的值

num1 = Number(prompt("请输入一个1--7的数值"));

//3、验证输入是否合法。

if(isNaN(num1)){

alert("输入有误!!!");

}else{

if(7<num1 || 0>num1){

alert("你输入的数据不是1-7的范围数。");

}else{

if(1===num1){

document.write("今天是星期一");

}else if(2===num1){

document.write("今天是星期二");

}else if(3===num1){

document.write("今天是星期三");

}else if(4===num1){

document.write("今天是星期四");

}else if(5===num1){

document.write("今天是星期五");

}else if(6===num1){

document.write("今天是星期六");

}else{

document.write("今天是星期日");

}

}

}

//4、输出结果。

//

//第2种写

//1、定义一个变量 var day;

var day;

//2、接收变量输入值

day = +(prompt("请输入1-7的数值"));

//3、判断输入值,输出对应的星期几或未知天数。

if(1===day){

alert("今天是星期一");

}else{

if(2===day){

alert("今天是星期二");

}else if (3===day){

alert("今天是星期三");

}else if(4===day){

alert("今天是星期四");

}else if(5===day){

alert("今天是星期五");

}else if(6===day) {

alert("今天是星期六");

}else if (7===day) {

alert("今天是星期二");

}else{

alert("未知日");

}

}

</script>

<script>

//接收用户输入的一个整数month代表月份,根据月份输出对应的季节。

//12 1 2 为冬季  3 4 5为春季  6 7 8为夏季  9 10 11为秋季

//1、定义一个变量 var month;

var month;

//2、接收输入的内容

month = +(window.prompt("请输入一个1-12的数值"));

//或

//month = Number(prompt("请输入一个1-12的月份"));  //写作是一样的。

//3、验证数据

if(isNaN(month)){

alert("输入的内容不正确。")

}else{

//4、判断月份并输出

if(month>=3 && month<=5){ //两边条件都成立才执行语句1

alert("你输入的月份是" + month +"月,所属 春季。");

}else if(month>=6 && month<=8){ //两边条件都成立才执行语句1

alert("你输入的月份是" + month +"月,所属 夏季。");

}else if(month>=9 && month<=11){ //两边条件都成立才执行语句1

alert("你输入的月份是" + month +"月,所属 秋季。");

}else if(month===12 || month===1 || month===2){ //两边条件都成立才执行语句1

alert("你输入的月份是" + month +"月,所属 冬季。");

}else{

alert("未知季节");

}

}

</script>

</html>

16js流程控制if练习3

<!DOCTYPE html>

<html>

<head>

<title>16js流程控制if练习3</title>

<meta http-equiv="content-type" content="text/html; charset=utf-8"/>

</head>

<body>

</body>

<script type="text/html">

//从键盘中输入2个数值,判断大小后输出较大的那个数。

//1、定义二个变量;var num1,num2;

var num1,num2;

//2、用二个变量接收变量的值

num1 = +(prompt("请输入第一个数值数"));

if(isNaN(num1)){

alert("你输入有误。");

}else{

num2 = +(prompt("请输入第二个数值数"));

if(isNaN(num2)){

alert("你输入第二个数值有误。")

}else{

if(num1>num2){

alert("你输入第一个值较大" + num1);

}else if(num1<num2){

alert("你输入第二个值较大" + num2);

}else{

alert("你输入的第一个值和第二个值相同" + num1);

}

}

}

</script>

<script type="text/html">

//从键盘输入3个参数,排序后输出

//第一种常规做法

//1、定义三个变量 分别 var num1,num2,num3;

var num1,num2,num3;

//2、判断和接收变量值。

num1 = +(prompt("请输入第一个数值"));

if(isNaN(num1)){

alert("请输入正确的数值");

}else{

num2 = +(prompt("请输入第二个数值"));

if(isNaN(num2)){

alert("输入第二个数值有误");

}else{

num3 =+(prompt("请输入第三个数值"));

if (isNaN(num3)){

alert("输入第三个数值有误");

}else{

if((num1>=num2) && (num2>=num3)){

document.write(num1 + ">" + num2 + ">" +num3);

}else if((num1>=num3)&&(num3>=num2)){

document.write(num1 + ">" + num3 + ">" +num2);

}else if((num2>=num1)&&(num1>=num3)){

document.write(num2 + ">" + num1 + ">" +num3);

}else if((num2>=num3)&&(num3>=num1)){

document.write(num2 + ">" + num3 + ">" +num1);

}else if((num3>=num1)&&(num1>=num2)){

document.write(num3 + ">" + num1 + ">" +num2);

}else if((num3>=num2)&&(num2>=num1)){

document.write(num3 + ">" + num2 + ">" +num1);

}

}

}

}

</script>

<script type="text/html">

//从键盘输入3个参数,排序后输出

//第二种使用选择排序方法

//1、定义三个变量 分别 var num1,num2,num3;

var num1,num2,num3,temp;

//2、判断和接收变量值。

num1 = +(prompt("请输入第一个数值"));

if(isNaN(num1)){

alert("请输入正确的数值");

}else{

num2 = +(prompt("请输入第二个数值"));

if(isNaN(num2)){

alert("输入第二个数值有误");

}else{

num3 =+(prompt("请输入第三个数值"));

if (isNaN(num3)){

alert("输入第三个数值有误");

}else{

//使用选择排序方法

if(num1>num2){

temp = num1;

num1 = num2;

num2 = temp;

}

if(num1>num3){

temp = num1;

num1 = num3;

num3 = temp;

}

if(num2>num3){

temp = num2;

num2 = num3;

num3 = temp;

}

}

}

}

document.write(num1 + "<" + num2 + "<" + num3);

</script>

<script>

//function bubbleSort(arr) {

//    var i = arr.length, j;

//    var tempExchangVal;

//    while (i > 0) {

//        for (j = 0; j < i - 1; j++) {

//            if (arr[j] > arr[j + 1]) {

//                tempExchangVal = arr[j];

//                arr[j] = arr[j + 1];

//                arr[j + 1] = tempExchangVal;

//            }

//        }

//        i--;

//    }

//    return arr;

// }

/*1.冒泡排序:

解析:1.比较相邻的两个元素,如果前一个比后一个大,则交换位置。

 2.第一轮的时候最后一个元素应该是最大的一个。

 3.按照步骤一的方法进行相邻两个元素的比较,这个时候由于最后一个元素已经是最大的了,所以最后一个元素不用比较。*/

//从键盘输入3个参数,排序后输出

//第三种使用冒泡排序方法

//1、定义三个变量 分别 var num1,num2,num3;

var num1,num2,num3,temp;

//2、判断和接收变量值。

num1 = +(prompt("请输入第一个数值"));

if(isNaN(num1)){

alert("请输入正确的数值");

}else{

num2 = +(prompt("请输入第二个数值"));

if(isNaN(num2)){

alert("输入第二个数值有误");

}else{

num3 =+(prompt("请输入第三个数值"));

if (isNaN(num3)){

alert("输入第三个数值有误");

}else{

//使用冒泡排序方法

if(num1>num2){

temp = num1;

num1 = num2;

num2 =temp;

}

if(num2>num3){

temp = num2;

num2 = num3;

num3 = temp;

}

if(num1>num2){

temp = num1;

num1 = num2;

num2 = temp;

}

}

}

}

document.write("num1="+num1 +";"+"num2="+num2 +";"+"num3="+num3);

</script>

</html>

16js流程控制if练习4

<!DOCTYPE html>

<html>

<head>

<title>16js流程控制if练习4</title>

<meta http-equiv="content-type" content="text/html; charset=utf-8"/>

</head>

<body>

</body>

<script type="text/html">

//从键盘中输入2个数值,判断大小后输出较大的那个数。

//1、定义二个变量;var num1,num2;

var num1,num2;

//2、用二个变量接收变量的值

num1 = +(prompt("请输入第一个数值数"));

if(isNaN(num1)){

alert("你输入有误。");

}else{

num2 = +(prompt("请输入第二个数值数"));

if(isNaN(num2)){

alert("你输入第二个数值有误。")

}else{

if(num1>num2){

alert("你输入第一个值较大" + num1);

}else if(num1<num2){

alert("你输入第二个值较大" + num2);

}else{

alert("你输入的第一个值和第二个值相同" + num1);

}

}

}

</script>

<script type="text/html">

//从键盘输入3个参数,排序后输出

//第一种常规做法

//1、定义三个变量 分别 var num1,num2,num3;

var num1,num2,num3;

//2、判断和接收变量值。

num1 = +(prompt("请输入第一个数值"));

if(isNaN(num1)){

alert("请输入正确的数值");

}else{

num2 = +(prompt("请输入第二个数值"));

if(isNaN(num2)){

alert("输入第二个数值有误");

}else{

num3 =+(prompt("请输入第三个数值"));

if (isNaN(num3)){

alert("输入第三个数值有误");

}else{

if((num1>=num2) && (num2>=num3)){

document.write(num1 + ">" + num2 + ">" +num3);

}else if((num1>=num3)&&(num3>=num2)){

document.write(num1 + ">" + num3 + ">" +num2);

}else if((num2>=num1)&&(num1>=num3)){

document.write(num2 + ">" + num1 + ">" +num3);

}else if((num2>=num3)&&(num3>=num1)){

document.write(num2 + ">" + num3 + ">" +num1);

}else if((num3>=num1)&&(num1>=num2)){

document.write(num3 + ">" + num1 + ">" +num2);

}else if((num3>=num2)&&(num2>=num1)){

document.write(num3 + ">" + num2 + ">" +num1);

}

}

}

}

</script>

<script type="text/html">

//从键盘输入3个参数,排序后输出

//第二种使用选择排序方法

//1、定义三个变量 分别 var num1,num2,num3;

var num1,num2,num3,temp;

//2、判断和接收变量值。

num1 = +(prompt("请输入第一个数值"));

if(isNaN(num1)){

alert("请输入正确的数值");

}else{

num2 = +(prompt("请输入第二个数值"));

if(isNaN(num2)){

alert("输入第二个数值有误");

}else{

num3 =+(prompt("请输入第三个数值"));

if (isNaN(num3)){

alert("输入第三个数值有误");

}else{

//使用选择排序方法

if(num1>num2){

temp = num1;

num1 = num2;

num2 = temp;

}

if(num1>num3){

temp = num1;

num1 = num3;

num3 = temp;

}

if(num2>num3){

temp = num2;

num2 = num3;

num3 = temp;

}

}

}

}

document.write(num1 + "<" + num2 + "<" + num3);

</script>

<script type="text/html">

//function bubbleSort(arr) {

//    var i = arr.length, j;

//    var tempExchangVal;

//    while (i > 0) {

//        for (j = 0; j < i - 1; j++) {

//            if (arr[j] > arr[j + 1]) {

//                tempExchangVal = arr[j];

//                arr[j] = arr[j + 1];

//                arr[j + 1] = tempExchangVal;

//            }

//        }

//        i--;

//    }

//    return arr;

// }

/*1.冒泡排序:

解析:1.比较相邻的两个元素,如果前一个比后一个大,则交换位置。

 2.第一轮的时候最后一个元素应该是最大的一个。

 3.按照步骤一的方法进行相邻两个元素的比较,这个时候由于最后一个元素已经是最大的了,所以最后一个元素不用比较。*/

//从键盘输入3个参数,排序后输出

//第三种使用冒泡排序方法

//1、定义三个变量 分别 var num1,num2,num3;

var num1,num2,num3,temp;

//2、判断和接收变量值。

num1 = +(prompt("请输入第一个数值"));

if(isNaN(num1)){

alert("请输入正确的数值");

}else{

num2 = +(prompt("请输入第二个数值"));

if(isNaN(num2)){

alert("输入第二个数值有误");

}else{

num3 =+(prompt("请输入第三个数值"));

if (isNaN(num3)){

alert("输入第三个数值有误");

}else{

//使用冒泡排序方法

if(num1>num2){

temp = num1;

num1 = num2;

num2 =temp;

}

if(num2>num3){

temp = num2;

num2 = num3;

num3 = temp;

}

if(num1>num2){

temp = num1;

num1 = num2;

num2 = temp;

}

}

}

}

document.write("num1="+num1 +";"+"num2="+num2 +";"+"num3="+num3);

</script>

<script>

//石头 剪子 布的实现

// 0 剪刀  1 石头  2 布

//1、定义两个变量  玩家和电脑

var player,computer;

//2、电脑出拳

//computer = Math.random()*3;  //Math.random() 取0-1之间的数。不等于0和1的数  Math.random()*3 那就是取0-3之间的数 不等于0和3的数。

computer = Math.floor(Math.random()*3); //取整数部分。

//console.log(computer);

//3、玩家出拳

player = +(prompt("请出拳:0:剪刀 1:石头 2:布"));

//4、判断比较

if(player<0 || player>2){

player = +(prompt("请重新出拳:0:剪刀 1:石头 2:布"));

}else{

if(player==0 && computer==2 ||

  player==1 && computer==0 ||

  player==2 && computer==1){

alert("恭喜您,羸了");

}else if(player==0 && computer==1 ||

  player==1 && computer==2 ||

  player==2 && computer==0){

alert("很遗憾,你输了");

}else{

alert("我们平局。")

}

}

</script>

</html>

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,968评论 6 482
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,601评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 153,220评论 0 344
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,416评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,425评论 5 374
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,144评论 1 285
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,432评论 3 401
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,088评论 0 261
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,586评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,028评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,137评论 1 334
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,783评论 4 324
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,343评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,333评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,559评论 1 262
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,595评论 2 355
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,901评论 2 345

推荐阅读更多精彩内容

  • 17js流程控制switch <!DOCTYPE html> 17js流程控制switch //js流程控制swi...
    ouyangqinbin阅读 261评论 0 0
  • 01javascript语法规范 <!DOCTYPE html> javascript语法...
    ouyangqinbin阅读 1,300评论 0 0
  • 简述JavaScript起源起源于美国的Netscape公司,原名为LiveScript,后改为JavaScrip...
    3ab670b99521阅读 2,986评论 0 0
  • html 什么是html超文本标记语言,用于网站开发。 html运用于什么场景手机端和原生代码结合处理业务逻辑,加...
    阿西吧小魔仙阅读 386评论 0 0
  • 第一章1,什么叫程序:程序就是计算机按照人类完成事物的步骤和逻辑,通过计算机命令来逐步执行最终实现目标的一种机器语...
    悟名先生阅读 942评论 0 4