回调函数 —— Node.js 学习笔记(3)
引言
Node.js 最大的特点就是异步式 I/O(或者非阻塞 I/O)与事件紧密结合的编程模式。这种模式与传统的同步式 I/O 线性的编程思路有很大的不同,因为控制流很大程度上要靠事件和回调函数来组织,一个逻辑要拆分为若干个单元。 ——「Node.js 开发指南」 By BYVoid
Write the code, change the world.
Node.js 最大的特点就是异步式 I/O(或者非阻塞 I/O)与事件紧密结合的编程模式。这种模式与传统的同步式 I/O 线性的编程思路有很大的不同,因为控制流很大程度上要靠事件和回调函数来组织,一个逻辑要拆分为若干个单元。 ——「Node.js 开发指南」 By BYVoid
之前使用 http 模块来写 Node.js 代码,并使其可以在浏览器访问,但是需要自己控制所收到的请求或者需要自己控制返回的内容,比较麻烦,不过已经有人帮我们完成这个艰难的工作了,那就是Express。
第一次使用 Express,先试试写个简单的 HTML 文件,使服务器正确解释并且访问。
可能是因为前端做多了的缘故,对 Javascript 有莫名的偏爱,所以今天开始来试试学一下用 Javascript 来写服务端的程序——也就是学习 Node.js。
跟学习所有的语言一样,第一个 demo 当然是 Hello World 了。
所以这次也不例外,我先试试启动 HTTP 服务器,并在浏览器中显示 “Hello World”。
Linux官方内置Bash中新发现一个非常严重安全漏洞(点击查看漏洞参考),黑客可以利用该Bash漏洞完全控制目标系统并发起攻击。建议各位Linux使用者尽快修复这个漏洞!
使用此命令:
env x='() { :;}; echo vulnerable' bash -c "echo this is a test"
若输出
vulnerable
this is a test
则表示存在此漏洞。
修复后则会输出
bash: warning: x: ignoring function definition attempt
bash: error importing function definition for `x'
this is a test
可通过更新 bash 并重启系统来解决这个问题:
yum update bash
更新后需要重启。
apt-get update
apt-get install bash
Ubuntu 无需重启。
给定一个已经升序排好序的数组,以及一个数target,如果target在数组中,返回它在数组中的位置。
否则,返回target插入数组后它应该在的位置。
假设数组中没有重复的数。以下是简单的示例:
[1,3,5,6], 5 → 2
[1,3,5,6], 2 → 1
[1,3,5,6], 7 → 4
[1,3,5,6], 0 → 0
提示:输入一个整数n,以及其对应的数组A[n],最后输入target
searchInsert(int A[], int n, int target)