node基础—函数的调用
普通本地函数的调用
var http = require('http');
http.createServer(function(request,response){
response.writeHead(200, {'Content-Type':'text/html;charset=utf-8'});
if(request.url!=="/favicon.ico"){ //清除第2此访问
response.write(fun1());
response.end('');
}
}).listen(8000);
console.log('Server running at http://127.0.0.1:8000/');
let fun1 = () => {
console.log("fun1");
return "你好,我是fun1"
}


调用另外一个js文件里的函数(只支持一个函数)
首先创建一个js文件fun1.js 该文件只有一个函数fun1,并且将其导出
function fun1(res) {
console.log("我是fun1")
res.write("您好,我是fun1")
}
module.exprts = fun1
然后在node服务中进行调用fun1.js文件中的fun1函数
let http = require('http')
let otherfun = require('./models/fun1')
http.createServer(function(request, response){
response.writeHead(200, {'Content-Type':'text/html;charset=utf-8'});
if(request.url!=="/favicon.ico"){ //清除第2此访问
otherfun(response) // 当只有一个函数的时候otherfun就代表着fun1函数
response.end('');
}
}).listen(8000);
console.log('Server running at http://127.0.0.1:8000/');


调用另外一个js文件里的函数(支持多个函数)
首先创建一个js文件otherFun.js 该文件有两个函数fun1和函数fun2,并且将其封装成对象导出
module.exports = {
fun1: function (res) {
console.log('我是fun1')
res.write('您好,我是fun1')
},
fun2: function (res) {
console.log('我是fun2')
res.write('您好,我是fun2')
}
}
然后在node服务中进行调用
let http = require('http')
let otherfun = require('./models/otherFun')
http.createServer(function(request, response){
response.writeHead(200, {'Content-Type':'text/html;charset=utf-8'});
if(request.url!=="/favicon.ico"){ //清除第2此访问
otherfun.fun1(response)// 多个函数的时候,需要后面写上函数名
otherfun.fun2(response)// 多个函数的时候,需要后面写上函数名
response.end('');
}
}).listen(8000);
console.log('Server running at http://127.0.0.1:8000/');


多个函数的另外一种调用方式,用字符串调用对应的函数,这样这里就可以用变量的方式
let http = require('http')
let otherfun = require('./models/otherFun')
http.createServer(function(request, response){
response.writeHead(200, {'Content-Type':'text/html;charset=utf-8'});
if(request.url!=="/favicon.ico"){ //清除第2此访问
otherfun['fun1'](response)// 多个函数的时候,需要后面写上函数名
otherfun['fun2'](response)// 多个函数的时候,需要后面写上函数名
response.end('');
}
}).listen(8000);
console.log('Server running at http://127.0.0.1:8000/');
let http = require('http')
let otherfun = require('./models/otherFun')
http.createServer(function(request, response){
response.writeHead(200, {'Content-Type':'text/html;charset=utf-8'});
if(request.url!=="/favicon.ico"){ //清除第2此访问
fun2Name = 'fun2'
otherfun['fun1'](response)// 多个函数的时候,需要后面写上函数名
otherfun[fun2Name](response)// 多个函数的时候,需要后面写上函数名
response.end('');
}
}).listen(8000);
console.log('Server running at http://127.0.0.1:8000/');
node基础—函数的调用的更多相关文章
- js基础 js自执行函数、调用递归函数、圆括号运算符、函数声明的提升 js 布尔值 ASP.NET MVC中设置跨域
js基础 目录 javascript基础 ESMAScript数据类型 DOM JS常用方法 回到顶部 javascript基础 常说的js包括三个部分:dom(文档document).bom(浏览器 ...
- Python基础--函数的定义和调用
一.函数的作用: 提高代码的可读性,减少代码的冗余,方便调用和修改,组织结构清晰 二.函数的定义:函数遵循先定义后调用的原则 1.无参函数 def funcname(): #def 是关键字,后跟函数 ...
- Python基础(函数,函数的定义,函数的调用,函数的参数,递归函数)
1.函数 我们知道圆的面积计算公式为: S = πr2 当我们知道半径r的值时,就可以根据公式计算出面积.假设我们需要计算3个不同大小的圆的面积: r1 = 12.34 r2 = 9.08 r3 = ...
- python基础----函数的定义和调用、return语句、变量作用域、传参、函数嵌套、函数对象、闭包、递归函数
1.函数的定义: 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.你已经知道Python提供了许多内建函数,比如print().但你也可 ...
- go语言基础之普通函数的调用流程
函数调用流程:先调用后返回,先进后出,函数递归,函数调用自己本分,利用此物点 1.普通函数的调用流程 package main //必须 import "fmt" func fun ...
- 【javaScript基础】马上调用函数表达式
在javaScript中,每一个函数被调用时,都会创建一个新的运行上下文.由于在一个函数里面定义的变量和函数仅仅能在里面訪问.在外面是不行的.上下文提供了一种非常easy的方法来创建私有性. //ma ...
- c++学习笔记之基础---类内声明线程函数的调用
近日需要将线程池封装成C++类,类名为Threadpool.在类的成员函数exec_task中调用pthread_create去启动线程执行例程thread_rounter.编译之后报错如下: spf ...
- C语言基础:内置函数的调用
#include<stdio.h>#include<math.h>#include<stdlib.h>#include<ctype.h>#include ...
- JavaScript Allongé 第一呷 :基础函数 (1)
第一呷 :基础函数 关于函数,尽管少,但毫不逊色. 在javascript中,函数是值,但它们不仅仅是简单的数值,字符串,或者甚至复杂的数据结构树或者地图.函数表示要执行的运算.就像数值.字符串和数组 ...
随机推荐
- WebBrowser引用IE版本问题,更改使用高版本IE
做了一个Winform的项目.项目里使用了WebBrowser控件.以前一直都以为WebBrowser是直接调用的系统自带的IE,IE是呈现出什么样的页面WebBrowser就呈现出什么样的页面.其实 ...
- WCF SqlParameter序列化问题解决方案
博文 http://www.cnblogs.com/pan11jing/archive/2011/08/19/2051827.html 通过自定义类,再在WCF端转换的方式解决问题,之后出现了一个很小 ...
- 路由器动态DNS设置
路由器中的动态DNS设置非常的简单,只需要注册动态域名服务商的账号,然后在路由器中登录该账号就可以了 一.路由器动态DNS作用 无线路由器连接宽带上网后,路由器会从宽带运营商那里获取一个IP地址,这个 ...
- [android] 显示意图激活另外一个activity
可以使用跳转的方式类似javaweb来实现界面转换 显示意图就是必须要指定开启组件的具体信息,包名,组件名,组件的class 新建一个类TwoActivity ,继承Activity类,重写onCre ...
- mybatis_06SQL片段
个人概要: SQL片段在使用if where的基础上,将if,where语句装到SQL标签内,在数据库操作元素内引用 Mybatis提供了SQL片段的功能,可以提高SQL的可重用性. <!--声 ...
- 解决org.hibernate.exception.SQLGrammarException:could not insert
今天在使用hibernate搭建项目时碰到了这个错误,找了好半天没能发现错误的原因, 上网求助了一下 发现出现这个bug的原因是因为数据表使用了数据库的关键字(保留字) 然后检查了一下,发现字段名称都 ...
- 2015 Multi-University Training Contest 6 solutions BY ZJU(部分解题报告)
官方解题报告:http://bestcoder.hdu.edu.cn/blog/2015-multi-university-training-contest-6-solutions-by-zju/ 表 ...
- Java中的匿名内部类及内部类的二三事
匿名内部类适合创建那些只需要使用一次的类,它的语法有些奇怪,创建匿名内部类会立即创建一个该类的实例,这个类定义立即消失,且不能重复使用. 定义匿名类的格式如下: new 实现接口() |父类构造器(实 ...
- 内省(Introspector)
/** * 内省:通过反射来操作javabean * 内省类 --> Bean信息 --> 属性描述符 --> 属性的get/set对应的Method --> 进行反射 * c ...
- hash 和pushState,replaceState
hash 要点: 1.不会向后台发请求:#是用来指导浏览器动作的,对服务器端完全无用. 2.用来跳转到页面的指定位置: 为网页位置指定标识符,有两个方法.一是使用锚点,比如<a name=& ...