http: Replace "in" usage with "=== undefined"
Speeds up http benchmarks.
This commit is contained in:
parent
ae1b0ca7a5
commit
9785ab6057
12
lib/http.js
12
lib/http.js
@ -352,7 +352,7 @@ IncomingMessage.prototype._addHeaderLine = function(field, value) {
|
||||
switch (field) {
|
||||
// Array headers:
|
||||
case 'set-cookie':
|
||||
if (field in dest) {
|
||||
if (dest[field] !== undefined) {
|
||||
dest[field].push(value);
|
||||
} else {
|
||||
dest[field] = [value];
|
||||
@ -372,7 +372,7 @@ IncomingMessage.prototype._addHeaderLine = function(field, value) {
|
||||
case 'proxy-authenticate':
|
||||
case 'sec-websocket-extensions':
|
||||
case 'sec-websocket-protocol':
|
||||
if (field in dest) {
|
||||
if (dest[field] !== undefined) {
|
||||
dest[field] += ', ' + value;
|
||||
} else {
|
||||
dest[field] = value;
|
||||
@ -383,14 +383,14 @@ IncomingMessage.prototype._addHeaderLine = function(field, value) {
|
||||
default:
|
||||
if (field.slice(0, 2) == 'x-') {
|
||||
// except for x-
|
||||
if (field in dest) {
|
||||
if (dest[field] !== undefined) {
|
||||
dest[field] += ', ' + value;
|
||||
} else {
|
||||
dest[field] = value;
|
||||
}
|
||||
} else {
|
||||
// drop duplicates
|
||||
if (!(field in dest)) dest[field] = value;
|
||||
if (dest[field] === undefined) dest[field] = value;
|
||||
}
|
||||
break;
|
||||
}
|
||||
@ -1010,7 +1010,7 @@ ServerResponse.prototype.writeHead = function(statusCode) {
|
||||
var field;
|
||||
for (var i = 0, len = obj.length; i < len; ++i) {
|
||||
field = obj[i][0];
|
||||
if (field in headers) {
|
||||
if (headers[field] !== undefined) {
|
||||
obj.push([field, headers[field]]);
|
||||
}
|
||||
}
|
||||
@ -1868,7 +1868,7 @@ function connectionListener(socket) {
|
||||
}
|
||||
});
|
||||
|
||||
if ('expect' in req.headers &&
|
||||
if (req.headers.expect !== undefined &&
|
||||
(req.httpVersionMajor == 1 && req.httpVersionMinor == 1) &&
|
||||
continueExpression.test(req.headers['expect'])) {
|
||||
res._expect_continue = true;
|
||||
|
Loading…
x
Reference in New Issue
Block a user