前端JS-17

这篇博客介绍了JavaScript中如何检测质数,使用break和continue控制循环,以及对象的操作。示例代码包括质数检测、嵌套循环的图形绘制、99乘法表和质数练习。此外,还详细讲解了对象的创建、属性操作及in运算符的使用。
摘要由CSDN通过智能技术生成

目录

质数

介绍

全部代码

嵌套的for循环

全部代码

 呈现效果

练习

 全部代码

 质数练习

全部代码

break和continue

break语句描述

continue语句描述

全部代码

对象

JS中数据类型

对象的分类

1.内建对象

2.宿主对象

3.自定义对象

对象的基本操作

创建对象

全部代码

属性名和属性值

             属性名

属性值

in运算符

全部代码


质数

介绍

在页面中接收一个用户输入的数字,并判断该数是否是质数
质数,只能是1和它自身整除的数,1不是质数也不是合数,质数必须是大于1的自然数

全部代码

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script type="text/javascript">
			/*
			 * 在页面中接收一个用户输入的数字,并判断该数是否是质数
			 * 	质数,只能是1和它自身整除的数,1不是质数也不是合数,质数必须是大于1的自然数
			 */
			var num=prompt("请输入一个大于1的整数:");
			
			//判断这个值是否合法
			if(num<=1){
				alert("该值不合法!");
			}else{
				//判断num是否是质数
				//获取1-num之间的数
				for(var i=2;i<num;i++){
					//console.log(i);
					//判断num是否能被i整除
					if(num%i!=0){
						//如果num能被i整除,则说明num一定不是质数
						//设置flag为false
						flag=false;
					}
				}
				//如果num是质数则输出
				if(flag){
					alert(num+"是质数!!!");
				}else{
					alert("这个不是质数")
				}
			}
		</script>
	</head>
	<body>
	</body>
</html>

嵌套的for循环

全部代码

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script type="text/javascript">
			/*
			 * 通过程序,在页面中输出如下的图形:
			 * *		1	<1	i=0
			 * **		2	<2	i=1
			 * ***		3	<3	i=2
			 * ****		4	<4	i=3
			 * *****	5	<5	i=4
			 * 
			 * *****
			 * *****
			 * *****
			 * *****
			 * *****
			 * 
			 * *****	1 j<5(5-0) i=0
			 * ****		2 j<4(5-1) i=1
			 * ***		3 j<3(5-2) i=2
			 * **		4 j<2(5-3) i=3
			 * *		5 j<1(5-4) i=4
			 */
			//向body中输出一个内容
			//document.write("*****");
			
			//通过一个for循环来输出图形
			//这个for循环执行几次,图形的高度就是多少
			//它可以用来控制图形的高度
			for(var i=0;i<5;i++){
				/*
				 * 在循环的内部再创建一个循环,用来控制图形的高度
				 * 目前我们的外部的for循环执行1次,内部的就会执行5次
				 * 
				 * 内部循环可以来决定图形的高度,执行几次图形的宽度就是多少
				 */
				for(var j=0;j<5;j++){
					document.write("*****<br/>");
				}
				for(var j=0;j<5-i;j++){
					document.write("*&nbsp;&nbsp;&nbsp;");
				}
				//输出一个换行
				document.write("<br/>");
			}
		</script>
	</head>
	<body>
	</body>
</html>

 呈现效果

练习

打印99乘法表
                     1*1=1
                     1*2=2 2*2=4
                     1*3=3 2*3=6 3*3=9
                     1*4=4 2*4=8 3*4=12 4*4=16
                                 ....9*9=81

 全部代码

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script type="text/javascript">
			/*
			 * 1.打印99乘法表
			 * 		1*1=1
			 * 		1*2=2 2*2=4
			 * 		1*3=3 2*3=6 3*3=9
			 * 		1*4=4 2*4=8 3*4=12 4*4=16
			 * 					....9*9=81
			 * 
			 * 2.打印出1-100之间所有的质数
			 */
			//创建外层循环,用来控制乘法表的高度
			for(var i=1;i<=9;i++){
				//创建一个内层循环来控制图形的宽度
				for (var j=1;j<=i;j++) {
					document.write("<span>"+j+"*"+i+"="+i*j+"</span>");
				}
				//输出一个换行
				document.write("<br />");
			}
		</script>
		<style type="text/css">
			span{
				display: inline-block;
				width: 100px;
			}
		</style>
	</head>
	<body>
	</body>
</html>

 质数练习

全部代码

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script type="text/javascript">
			/*打印出1-100之间所有的质数*/
			
			//打印出2-100之间所有的质数
			for(var i=2;i<=100;i++){
				
				console.log(i);
				//判断i是否是质数
				//获取到2-i之间的所有的数
				for(var j=2;j<i;j++){
					
					//判断i是否能被j整除
					if(i%j==0){
						//如果进入判断则证明i不是质数,修改flag=false
						flag=false;
					}
				}
				//如果是质数,则打印i的值
				if(flag){
					
				}
				console.log(i);
			}
		</script>
		
	</head>
	<body>
	</body>
</html>

break和continue

* break关键字可以用来退出switch或循环语句
* 不能在if语句中使用break和continue

break语句描述

break语句,用于无条件结束各种循环(退出循环)和switch。说明:一般情况下,需要在break语句之前加一个条件判断。换句话说:就是条件成立了,就退出循环。

continue语句描述

结束本次循环,而开始下一次循环。continue之后的代码不再执行了。说明:一般情况下,需要在continue语句之前加一个条件判断。

             * 可以为循环语句创建一个label,来标识当前的循环
             * label:循环语句
             * 使用break语句时,可以在break后跟着一个label,
             * 这样break将会结束指定的循环,而不是最近的

* continue关键字可以用来跳过档次循环
* 同样continue也是默认只会对离他最近的循环起作用

全部代码

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script type="text/javascript">
			/*
			 * break关键字可以用来退出switch或循环语句
			 * 不能在if语句中使用break和continue
			 */
//			for(var i=0;i<5;i++){
//				console.log(i);
//				
//				if(i==2){
//					break;
//				}	
//			}

			/*
			 * 可以为循环语句创建一个label,来标识当前的循环
			 * label:循环语句
			 * 使用break语句时,可以在break后跟着一个label,
			 * 这样break将会结束指定的循环,而不是最近的
			 */
//			outer:
//			for(var i=0;i<5;i++){
//				console.log("@外层循环"+i);
//				for (var j=0;j<5;j++) {
//					break;
//					console.log("内层循环:"+j);
//				}
//			}
			/*
			 * continue关键字可以用来跳过档次循环
			 * 同样continue也是默认只会对离他最近的循环起作用
			 */
//			for(var i=0;i<5;i++){
//				if(i==2){
//					continue;
//				}
//				console.log(i);
//			}
			for (var i=0;i<5;i++) {
				for (var j=0;j<5;j++) {
					continue;
					
					console.log("-->"+j);
				}
			}
		</script>
	</head>
	<body>
	</body>
</html>

对象

JS中数据类型

             * -String字符串
             * -Number数值
             * -Boolean布尔值
             * -Null空值
             * -Undefined未定义
             *         -以上这五种类型属于基本数据类型,以后我们看到的值
             *             只要不是上边的5种,全都是对象
             * -Object 对象

* 基本数据类型都是单一的值"hello" 123 true
             * 值和值之间没有任何的联系。

* 在JS中来表示一个人的信息(name gender age)
             *     var name="孙悟空";
             *  var gender="男";
             *  var age=18;
             * 如果使用基本数据类型的数据,我们所创建的变量都是独立,不能成为一个整体

对象属于一种复合的数据类型,在对象中可以保存多个不同数据类型的属性

对象的分类

1.内建对象

 * -由ES标准中定义的对象,在任何的ES的实现中都可以使用
 * -比如:Math String Number Boolean Function Object...

2.宿主对象

-由JS的运行环境提供的对象,目前来讲主要指由浏览器提供的对象
-比如BOM DOM

3.自定义对象

-由开发人员自己创建的对象

对象的基本操作

创建对象

             * 使用new关键字调用的函数,是构造函数的constructor
             * 构造函数是专门用来创建对象的函数
             * 使用typeof检查一个对象时,会返回object

var obj=new Object();
			
//console.log(obj);

             * 在对象中保存的值称为属性
             * 向对象添加属性
             * 语法:对象.属性名=属性值

			//向obj中添加一个name属性
			obj.name="孙悟空";
			//向obj中添加一个gender属性
			obj.gender="男";
			//向obj中添加一个age属性
			obj.age=18;

             * 读取对象中的属性
             * 语法; 对象.属性名
             
             * 如果读取对象中没有的属性,不会报错而是会返回undefined

			//console.log(obj.gender);
			//console.log(obj.hello);

             * 修改对象的属性值
             * 语法:对象.属性名=新值

			obj.name="tom";

             * 删除对象的属性
             *     语法:delete 对象.属性名

全部代码

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script type="text/javascript">
			/*
			 * JS中数据类型
			 * -String字符串
			 * -Number数值
			 * -Boolean布尔值
			 * -Null空值
			 * -Undefined未定义
			 * 		-以上这五种类型属于基本数据类型,以后我们看到的值
			 * 			只要不是上边的5种,全都是对象
			 * -Object 对象
			 * 
			 * 基本数据类型都是单一的值"hello" 123 true
			 * 值和值之间没有任何的联系。
			 * 
			 * 在JS中来表示一个人的信息(name gender age)
			 * 	var name="孙悟空";
			 *  var gender="男";
			 *  var age=18;
			 * 如果使用基本数据类型的数据,我们所创建的变量都是独立,不能成为一个整体
			 * 
			 * 对象属于一种复合的数据类型,在对象中可以保存多个不同数据类型的属性
			 * 
			 * 对象的分类:
			 * 1.内建对象
			 * -由ES标准中定义的对象,在任何的ES的实现中都可以使用
			 * -比如:Math String Number Boolean Function Object...
			 * 
			 * 2.宿主对象
			 * 	-由JS的运行环境提供的对象,目前来讲主要指由浏览器提供的对象
			 * 	-比如BOM DOM
			 * 
			 * 3.自定义对象
			 * 	-由开发人员自己创建的对象
			 * 
			 */
			//创建对象
			/*
			 * 使用new关键字调用的函数,是构造函数的constructor
			 * 构造函数是专门用来创建对象的函数
			 * 使用typeof检查一个对象时,会返回object
			 * 
			 */
			var obj=new Object();
			
			//console.log(obj);
			
			/*
			 * 在对象中保存的值称为属性
			 * 向对象添加属性
			 * 语法:对象.属性名=属性值
			 */
			
			//向obj中添加一个name属性
			obj.name="孙悟空";
			//向obj中添加一个gender属性
			obj.gender="男";
			//向obj中添加一个age属性
			obj.age=18;
			
			/*
			 * 读取对象中的属性
			 * 语法; 对象.属性名
			 * 
			 * 如果读取对象中没有的属性,不会报错而是会返回undefined
			 */
			
			//console.log(obj.gender);
			//console.log(obj.hello);
			
			/*
			 * 修改对象的属性值
			 * 语法:对象.属性名=新值
			 */
			obj.name="tom";
			
			/*
			 * 删除对象的属性
			 * 
			 * 	语法:delete 对象.属性名
			 */
			console.log(obj.name);
		</script>
	</head>
	<body>
	</body>
</html>

属性名和属性值

             * 向对象中添加属性


             属性名


             *     -对象的属性名不强制要求遵守标识符的规范
             *         什么乱七八糟的名字都可以使用
             *     -但是我们使用是还是尽量按照标识符的规范去做

             * 如果要使用特殊的属性名,不能采用的方式来操作
             * 需要使用另一种方式:
             *             语法:对象["属性名"]=属性值
             * 读取时也需要采用这种方式
             * 
             * 使用[]这种形式去操作属性,更加的灵活
             * 在[]中可以直接传递一个变量,这样变量值是多少就会读取哪个属性

属性值

JS对象的属性值,可以是任意的数据类型

			obj.test=true;
			obj.test=null;
			obj.test=undefined;

in运算符

             *     -通过运算符可以检查一个对象中是否含有指定的属性
             *         如果有则返回true,没有则返回false
             *     -语法:
             *         "属性名"in 对象

			//console.log(obj.test2);
			
			//检查obj中是否含有test2属性
			//console.log("test"in obj);
			//console.log("test"in obj);

全部代码

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script type="text/javascript">
			var obj=new Object();
			/*
			 * 向对象中添加属性
			 * 属性名:
			 * 	-对象的属性名不强制要求遵守标识符的规范
			 * 		什么乱七八糟的名字都可以使用
			 * 	-但是我们使用是还是尽量按照标识符的规范去做
			 */
			obj.name="孙悟空";
			
			//obj.var="hello";
			
			/*
			 * 如果要使用特殊的属性名,不能采用的方式来操作
			 * 需要使用另一种方式:
			 * 			语法:对象["属性名"]=属性值
			 * 读取时也需要采用这种方式
			 * 
			 * 使用[]这种形式去操作属性,更加的灵活
			 * 在[]中可以直接传递一个变量,这样变量值是多少就会读取哪个属性
			 */
			
			obj["123"]=789;
			obj["nihao"]="你好";
			var n="nihao";
			//console.log(obj["123"]);
			
			/*
			 * 属性值
			 * 	JS对象的属性值,可以是任意的数据类型
			 * 
			 */
			obj.test=true;
			obj.test=null;
			obj.test=undefined;
			
			//创建一个对象
			var obj2=new Object();
			obj2.name="猪八戒";
			
			//将obj设置obj的属性
			obj.test=obj2;
			
			//console.log(obj.test.name);
			
			/*
			 * in运算符
			 * 	-通过运算符可以检查一个对象中是否含有指定的属性
			 * 		如果有则返回true,没有则返回false
			 * 	-语法:
			 * 		"属性名"in 对象
			 */
			//console.log(obj.test2);
			
			//检查obj中是否含有test2属性
			//console.log("test"in obj);
			//console.log("test"in obj);
			
			console.log("name"in obj);
		
		</script>
	</head>
	<body>
	</body>
</html>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值