JS自定义对象的创建及JS函数语句和文本框的结合

自定义对象的创建: 

<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script type="text/javascript">
			//自定义对象的创建
			//使用object创建一个对象
			var student =new Object()
			// console.log(student)
			//给对象student添加属性stuID,stuName,className
			student.stuID="1001"
			student.stuName="张三"
			student.className="移动2班"
			//给对象添加了一个函数sayHello()
			student.sayHello=function(){
				console.log("大家好")
			}
			console.log(student)
			//对象名,函数名()实现函数的调用
			student.sayHello()
			console.log(student.stuID)
			
			//使用function创建一个对象
			function teacher(tid,tname){
				//this表示当前对象
				this.tid=tid//教师编号
				this.tname=tname//教师姓名//行为
				this.eat=function(){
					console.log("吃饭")
				}
			}
			var t1=new teacher("1","徐高杰")
			//使t1来访问属性和函数
			//调用函数
			t1.eat()
			console.log(t1.tid,t1.tname)
			
		</script>
	</body>
</html>

其他创建对象的方式: 

//其他创建对象的方式
			var stu={
				stuID:"1002",
				stuName:"李四",,
				className:"移动3班",
				study:function(){
					console.log("学习")
				}
			}
			stu.study()
			console.log(stu.stuID,stu.className,stu.className)

 

函数语句和文本框的结合:

<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		第一个数:<input type="text" name="" id="one" value="" /><br>
		第二个数:<input type="text" name="" id="two" value="" /><br>
		运算方式:<input type="button" name="yunsuan" id="yusuan" value="+"  onclick="cal('+')"/>
		<input type="button" name="yunsuan" id="yusuan" value="-"  onclick="cal('-')"/>
		<input type="button" name="yunsuan" id="yusuan" value="*"  onclick="cal('*')"/>
		<input type="button" name="yunsuan" id="yusuan" value="/"  onclick="cal('/')"/><br>
		运算结果:<input type="text" name="" id="result" value="" /><br>
		
		<script type="text/javascript">
			function cal(y){
				//实现两个数相加
				// alert()
				//获取文本框的值
				var one=document.getElementById("one").value
				var two=document.getElementById("two").value
				var result=0
				// if(y=="+"){
				// 	 result =parseFloat(one)+parseFloat(two)
				// }else if(y=="-"){
				// 	 result =parseFloat(one)-parseFloat(two)
				// }else if(y=="*"){
				// 	 result =parseFloat(one)*parseFloat(two)
				// }else if(y=="/"){
				// 	 result =parseFloat(one)/parseFloat(two)
				// }
				
				//可以使用switch....case 来实现
				switch (y){
					case "+":
					    result =parseFloat(one)+parseFloat(two)
						break;
					case "-":
					    result =parseFloat(one)-parseFloat(two)
						break;
					case "*":
						    result =parseFloat(one)*parseFloat(two)
							break;
					case "/":
					    result =parseFloat(one)/parseFloat(two)
						break;
					default:
						break;
				}
				document.getElementById("result").value=result
			}
		</script>
	</body>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		Email:<input type="text" name="email" id="email" value="" />
		<input type="button" name="" id="" value="验证" onclick="checkEmail()"/>
		<script type="text/javascript">
			//字符串对象
			var str="Hello World!"
			console.log(str.length)//length用来获取字符串的长度
			console.log(str.charAt(2))
			// function test(){
			// 	console.log("aa")
			// }
			// console.log(test())
			
			console.log(str.indexOf("l"))
			console.log(str.indexOf("b"))
			//判断是否包含某个字符
			console.log(str.substring(0,5))//(0,5)
			//substr():第一个参数值的是索引,第二个参数指的是截取的字符串的长度
			console.log(str.substr(0,2))
			
			//判断邮箱地址格式是否正确  222qqcom
			function checkEmail(){
				//获取文本框中输入值
				var email=document.getElementById("email").value
				if(email.indexOf("@")==-1){
					alert("该邮箱地址中不包括@")
				}else if(email.indexOf(".")==-1){
					alert("该邮箱地址中不包括.")
				}else if(email.indexOf("@")>email.indexOf(".")){
					alert("该邮箱地址中@必须在.的前面")
				}else{
					alert("邮箱地址正确")
				}
			} 
		</script>
	</body>
</html>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 要在Vue 3项目中创建自定义指令,可以按照以下步骤操作: 1. 创建一个Vue 3项目。 2. 在需要使用自定义指令的组件中,可以通过在 `setup()` 函数中使用 `directive()` 方法来创建自定义指令。 例如,以下代码演示了如何创建一个名为 "focus" 的自定义指令,该指令可以让元素在加载时自动获得焦点: ```javascript import { directive } from 'vue' export const focus = directive((el) => { el.focus() }) ``` 在上面的代码中,我们使用了Vue 3的 `directive()` 方法来创建一个名为 "focus" 的自定义指令。该方法需要接收一个回调函数,该回调函数会在指令被绑定到元素上时被调用。在上面的例子中,我们在回调函数中调用了 `el.focus()` 方法,以便在元素加载时将焦点设置为该元素。 3. 在需要使用自定义指令的组件中,可以使用 `v-{指令名}` 的语法来将自定义指令绑定到元素上。例如,在以下代码中,我们将名为 "focus" 的自定义指令绑定到一个文本框上: ```html <template> <input v-focus /> </template> <script> import { focus } from './directives' export default { directives: { focus } } </script> ``` 在上面的代码中,我们使用了 `v-focus` 的语法来将名为 "focus" 的自定义指令绑定到一个文本框上。同时,在组件的 `directives` 选项中,我们也将 "focus" 自定义指令注册为该组件可用的指令。 这样,当该组件被加载时,文本框就会自动获得焦点,因为我们在自定义指令的回调函数中设置了 `el.focus()`。 ### 回答2: Vue 3脚手架创建自定义指令非常简单。首先,我们需要创建一个新项目并进入该项目的目录。然后,我们可以使用命令`vue create`来初始化一个新的Vue项目。接下来,系统会提示您选择一些配置选项,您可以根据自己的需要进行选择。 创建项目后,我们可以在项目中的`src`文件夹中找到`main.js`文件。在这个文件中,我们可以通过`app.directive`方法来创建自定义指令。在这个方法中,我们需要传入两个参数:指令的名称和一个对象,其中包含指令的各种属性和钩子函数。 例如,我们可以创建一个自定义指令,用于让一个元素在鼠标悬停时改变背景颜色。在`main.js`文件中,我们可以添加如下代码: ```javascript app.directive('hover-bg', { mounted(el) { el.addEventListener('mouseenter', () => { el.style.backgroundColor = 'blue'; }); el.addEventListener('mouseleave', () => { el.style.backgroundColor = 'white'; }); } }); ``` 上面的代码创建了一个名为`hover-bg`的指令,它使用`mounted`钩子函数来添加鼠标悬停事件监听器。当鼠标进入元素时,背景颜色会变为蓝色,当鼠标离开元素时,背景颜色会变为白色。您可以根据自己的需求修改指令的行为。 创建自定义指令后,我们可以在组件中使用它。例如,在一个组件的模板中,我们可以将指令应用于一个元素: ```html <template> <div v-hover-bg>Hello, world!</div> </template> ``` 上面的代码将`hover-bg`指令应用于一个`div`元素,这个`div`元素将在鼠标悬停时改变背景颜色。 总结来说,使用Vue 3脚手架创建自定义指令非常简单。只需在`main.js`文件中使用`app.directive`方法创建指令,并在模板中应用指令即可。希望这个回答对您有帮助! ### 回答3: 在Vue3中,可以通过创建自定义指令来扩展Vue的功能。下面是使用Vue3脚手架创建自定义指令的步骤: 首先,使用Vue3脚手架创建一个新的Vue项目。 在项目中创建一个新的文件,命名为directive.js。 在directive.js文件中,定义你的自定义指令。例如,可以创建一个自定义的v-focus指令来使元素获得焦点。代码如下: ``` import { Directive } from 'vue'; const focusDirective = { mounted(el) { el.focus(); } }; const app = Vue.createApp({}); app.directive('focus', focusDirective); export default app; ``` 在主组件中,通过import语句引入directive.js文件。 使用v-focus指令将指定元素绑定到指令上。例如,可以在模板中的一个input元素上使用v-focus指令: ```html <template> <div> <input v-focus> </div> </template> ``` 以上就是使用Vue3脚手架创建自定义指令的简单示例。你可以在directive.js文件中定义其他自定义指令,然后在模板中使用它们来扩展Vue的功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值