温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

nodejs渐入佳境[13]-node回调操作

发布时间:2020-07-23 22:49:58 阅读:254 作者:jonson_jackson 栏目:开发技术
前端开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

自定义回调函数

123456789101112131415
//自定义函数,包含回调函数var getUser=(id,callback)=>{  var user = {    id:id,    name:'jonson'  }  setTimeout(()=>{    callback(user);  },3000);}//调用,并且传递了一个回调函数getUser(31,(userobject)=>{  console.log(userobject);})

执行后输出:

1
{ id: 31, name: 'jonson' }

天气网站回调

1
> npm install --save request
12345678
const request = require('request');request({  url:'https://api.openweathermap.org/data/2.5/forecast?q=beijing,cn&appid=09ec05ac89602c9970393fe760db2bf5',  json:true   // 将json返回结果解析为json对象},(error,response,body)=>{  console.log(body);});

打印出:

12345678910111213141516171819202122
{ cod: '200',  message: 0.0038,  cnt: 38,  list:   [ { dt: 1542261600,       main: [Object],       weather: [Array],       clouds: [Object],       wind: [Object],       rain: [Object],       sys: [Object],       dt_txt: '2018-11-15 06:00:00' },     { dt: 1542272400,       main: [Object],       weather: [Array],       clouds: [Object],       wind: [Object],       rain: [Object],       sys: [Object],       dt_txt: '2018-11-15 09:00:00' },      ...

好看的格式显示

123456789
const request = require('request');request({  url:'https://api.openweathermap.org/data/2.5/forecast?q=beijing,cn&appid=09ec05ac89602c9970393fe760db2bf5',  json:true   // 将返回结果解析为json对象},(error,response,body)=>{  console.log(JSON.stringify(body,undefined,2));});

打印出:

12345678910111213141516171819202122232425262728293031323334353637383940
{  "cod": "200",  "message": 0.0026,  "cnt": 38,  "list": [    {      "dt": 1542261600,      "main": {        "temp": 282.38,        "temp_min": 277.973,        "temp_max": 282.38,        "pressure": 1017.9,        "sea_level": 1043.48,        "grnd_level": 1017.9,        "humidity": 90,        "temp_kf": 4.4      },      "weather": [        {          "id": 500,          "main": "Rain",          "description": "light rain",          "icon": "10d"        }      ],      "clouds": {        "all": 92      },      "wind": {        "speed": 1.71,        "deg": 330.5      },      "rain": {        "3h": 0.98      },      "sys": {        "pod": "d"      },      "dt_txt": "2018-11-15 06:00:00"    },

处理用户输入:

12345678910111213141516171819202122
const request = require('request');const yargs = require('yargs');const argv = yargs.options({  a:{    demand:true,    alias:'address',    describe:'Address to fetch weather for',    string:true  }}).help().alias('help','h').argv;request({  url:`https://samples.openweathermap.org/data/2.5/forecast?q=${argv.address},cn&appid=b6907d289e10d714a6e88b30761fae22`,  json:true   // 将返回结果解析为json对象},(error,response,body)=>{  console.log(JSON.stringify(body,undefined,2));});

测试

1
> node async.js -a xingjiang
  • 本文链接: https://dreamerjonson.com/2018/11/15/node-13/

  • 版权声明: 本博客所有文章除特别声明外,均采用 CC BY 4.0 CN协议 许可协议。转载请注明出处!

nodejs渐入佳境[13]-node回调操作

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI

开发者交流群×