node.js callback

本文通过几个示例介绍了如何使用Node.js中的fs模块来读取目录下的文件,并展示了不同方式处理回调函数的方法。
fs = require('fs')
fs.readdir ".", (err, filenames) ->
    for fi in filenames
        console.log fi
    console.log "ready"        

console.log 'end'

dengwei@V1088:~/node_test$ ls
a.coffee app.js circle.js d.coffee echo.js example.js

output:

end

circle.js

example.jsecho.js

d.coffeeapp.js

a.coffee

ready

 see another way of callback:

fs = require 'fs'
print = (input) ->
    console.log input

getDir = (path, cal) ->
    fs.readdir path, (err,files) ->
        if err
            console.log err
        else
            filesName = files[1]
        cal err, filesName
        console.log 'finished'


console.log '1'

fn = getDir '.',(err, input) ->
    console.log input
    console.log 'finished fn'

console.log 'end'

output:

1
end
example.js
finished fn
finished

  1

fs = require 'fs'
print = (err, input) ->	
    #console.log arguments
    console.log input

getDir = (path, cal) ->
    fs.readdir path, (err,files) ->
        if err
            console.log err
        else
            filesName = files[1]
        cal err, filesName


console.log '1'

#fn = getDir '.',(err, input) ->
#    console.log input
#    console.log 'finished fn'

getDir '.', print

console.log 'end'

  2

fs = require 'fs'
print = (input) ->
    console.log input

getDir = (path, cal) ->
    fs.readdir path, (err,files) ->
        if err
            console.log err
        else
            filesName = files[1]
        cal filesName


console.log '1'

getDir '.', print

console.log 'end'

3

fs = require 'fs'

getDir = (path, cal) ->
    fs.readdir path, (err,files) ->
        if err
            console.log err
        else
            filesName = files[1]
        cal err, filesName


console.log '1'

fn = getDir '.',(err, input) ->
    console.log input
    console.log 'finished fn'


console.log 'end'

  EOF

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值