JavaScript函数调用经典实例代码
作者:小高今天早睡了吗? 发布时间:2024-09-08 09:23:04
标签:js,函数,调用
JavaScript函数调用经典例题
1.输入框判断是不是闰年
2.随机数判断是不是闰年
3.输入框判断是不是质数
4.随机数判断是不是质数
5.封装函数,判断日期是否合法
思考:首先我们采用函数调用的方法,将需要调用的函数都写在 js 文件夹里面,调用的时候会更方便。需要注意的是不要忘记在html中引入js.
html代码:
<body>
<span>是否为闰年</span>
<input type="text" id='inp1'>
<br>
<span>是否为质数</span>
<input type="text" id="inp2">
<br>
<!-- 外部引入js 文件 -->
<script src="../js/tools_practice.js"></script>
<script>
//调用获取对象函数
var oInp1 = get('inp1');
//判断是否为闰年
var year = leap_year(2004) ;
//赋值给输入框
if(year){
oInp1.value = '是闰年' ;
}
else{
oInp1.value = '不是闰年' ;
}
//调用随机数生成一个年份判断是否为闰年
var y = rand(1000 , 2000) ;
var res = leap_year(y) ;
if(res){
document.write('随机数' + y + '是闰年' +' ') ;
}
else{
document.write('随机数' + y + '不是闰年' + ' ') ;
}
//调用函数拿到相关对象
var oInp2 = get('inp2') ;
//输入框判断是否为质数
var n = isZhi(14) ;
//赋值给判断质数输入框
if(n){
oInp2.value = '是质数'
}
else{
oInp2.value = '不是质数'
}
//调用随机数生成一个数字判断是否为质数
var num = rand(0,1000) ;
var res3 = isZhi(num) ;
if(res3){
document.write('随机数' + num + '是质数' +' ') ;
}
else{
document.write('随机数' + num + '不是质数' +' ') ;
}
//封装函数,判断日期是否合法
var da = data(1233,1,32) ;
if(da){
document.write('日期合法' +' ') ;
}
else{
document.write('日期不合法' +' ') ;
}
</script>
</body>
js代码:
//功能:判断某年是否为闰年
//参数:
// number
//返回值:
// boolean
function leap_year(x) {
if (x % 4 === 0 && x % 100 !== 0 || x % 400 === 0) {
return true;
}
return false;
}
//获取对象
function get(id) {
return document.getElementById(id);
}
//功能:产生某个范围内的随机整数
//参数:
// min number 范围最小值
// max number 范围最大值
//返回值:
// number
function rand(min, max) {
return Math.round(Math.random() * (max - min) + min);
}
//功能:判断一个数是否为质数
//参数 :
// number
//返回值:
// boolean
function isZhi(n) {
for (var i = 2; i < n; i++) {
if (n % i === 0) {
return false;
}
}
return true;
}
//功能:判断日期是否合法
//参数:
// y number 年份
// m number 月份
// d number 日期
//返回值:
// boolean
function data(y, m, d) {
//先判断年 --> 在判断月 --> 在判断日期
//判断年 :
if (y >= 1000 && y <= 2000 && y % 1 === 0) {
//判断月
if (m >= 1 && m <= 12 && m % 1 === 0) {
var maxDay ;
if (m === 1 || m === 3 || m === 5 || m === 7 || m === 8 || m === 10 || m === 12) {
maxDay = 31;
}
else if (m === 4 || m === 6 || m === 9 || m === 11) {
maxDay = 30;
}
else if (m === 2) {
if (y % 4 === 0 && y % 100 != 0 || y % 400 === 0) {
maxDay = 29;
}
else {
maxDay = 28;
}
}
//判断日期
if(d >= 1 && d <= maxDay && d % 1 === 0){
return true ;
}
}
}
return false ;
}
JS函数的定义与调用方法
JS函数调用的四种方法:方法调用模式,函数调用模式,构造器调用模式,apply,call调用模式
1.方法调用模式:
先定义一个对象,然后在对象的属性中定义方法,通过myobject.property来执行方法,this即指当前的myobject 对象。
var blogInfo={
blogId:123,
blogName:"werwr",
showBlog:function(){alert(this.blogId);}
};
blogInfo.showBlog();
2.函数调用模式
定义一个函数,设置一个变量名保存函数,这时this指向到window对象。
var myfunc = function(a,b){
return a+b;
}
alert(myfunc(3,4));
3.构造器调用模式
定义一个函数对象,在对象中定义属性,在其原型对象中定义方法。在使用prototype的方法时,必须实例化该对象才能调用其方法。
var myfunc = function(a){
this.a = a;
};
myfunc.prototype = {
show:function(){alert(this.a);}
}
var newfunc = new myfunc("123123123");
newfunc.show();
4.apply,call调用模式
var myobject={};
var sum = function(a,b){
return a+b;
};
var sum2 = sum.call(myobject,10,30); //var sum2 = sum.apply(myobject,[10,30]);
alert(sum2);
来源:https://blog.csdn.net/m0_55710075/article/details/121867995


猜你喜欢
- 游标(Cursor)是处理数据的一种方法,为了查看或者处理结果集中的数据,游标提供了在结果集中一次以行或者多行前进或向后浏览数据的能力。我们
- 一份基于cnn的手写数字自识别的代码,供大家参考,具体内容如下# -*- coding: utf-8 -*-import tensorflo
- 前言子查询指一个查询语句嵌套在另一个查询语句内部的查询,这个特性从MySQL 4.1开始引入。SQL 中子查询的使用大大增强了 SELECT
- 前言事情是这样的马上就快到毕业季了,大四的学姐们快要离校了你心中那个没有说出口的学姐,你还记得吗跟着博主,用pygame给你心中那个学姐做一
- 前言之前写pandas和matplotlib的时候说到了想要出一期Pyechart系列数据可视化的文章。比起matplotlib,pyeac
- tensorflow下设置使用某一块GPU(从0开始编号):import osos.environ["CUDA_DEVICE_OR
- 触发器是一种特殊的存储过程,触发器主要是通过事件进行触发而被自动调用执行,而存储过程必须通过存储过程的名称被调用。一、触发器的定义触发器是在
- UEditor效果图一、简介UEditor是一个开源免费的编辑器,由百度web前端研发部开发所见即所得富文本web编辑器,具有轻量,可定制,
- 一、Tesseract文字识别是ORC的一部分内容,ORC的意思是光学字符识别,通俗讲就是文字识别。Tesseract是一个用于文字识别的工
- <!doctype><html><head><title>新闻图片轮换类</title
- 目的检测字符串中是否包含某字符集合中的字符方法 最简洁的方法如下,清晰,通用,快速,适用于任何序列和容器def containAny(seq
- PyTorch 1.0 同时面向产品化 AI 和突破性研究的发展,「我们在 PyTorch1.0 发布前解决了几大问题,包括可重用、性能、编
- 本文实例为大家分享了vue实现下拉菜单树的具体代码,供大家参考,具体内容如下效果:使用 Vue-Treeselect 实现建议通过npm安装
- MySQLdb默认查询结果都是返回tuple,输出时候不是很方便,必须按照0,1这样读取,无意中在网上找到简单的修改方法,就是传递一个cur
- 随着网络的发展,人们通过各种方式使用它。今天,网络购物,跟朋友或者不认识的人聊天,管理银行账户,以及一些日常应用,共享照片或视频,等等。事实
- 变量的缓存机制变量的缓存机制(以下内容仅对python3.6.x版本负责)机制只要有两个值相同,就只开辟一个空间为什么要有这样的机制在计算机
- 本文实例讲述了Python实现配置文件备份的方法。分享给大家供大家参考。具体如下:这里平台为Linux:#!/usr/bin/python#
- 这篇文章主要介绍了Python实现word2Vec model过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学
- 本文实例讲述了Django框架首页和登录页分离操作。分享给大家供大家参考,具体如下:1.登录模板login.html<!DOCTYPE
- 前言我们在写应用时,基本都会用到配置文件,从各种 shell 到 nginx 等,都有自己的配置文件。虽然这没有太多难度,但是配置项一般相对