不了解具有功能和参数的查询字符串解析

时间:2019-03-11 21:42:39

标签: javascript node.js web web-development-server

我不理解这样的代码片段。有什么师傅可以帮我解释一下: 我已经搜索了querystring.parse(str, [sep], [eq], [options])的说明。但是,我不明白为什么后面会有“ = function (str){}”。谢谢 这是代码:

(function () 
 {
    'use strict';
    var queryString = {};
	
    queryString.parse = function (str) //do not know why there is a function assigned here
	{
        if (typeof str !== 'string') 
		    {
            return {};
        }

        str = str.trim().replace(/^\?/, '');

        if (!str) {
            return {};
        }
  }
});

1 个答案:

答案 0 :(得分:1)

这只是说它是一个函数,调用时它将在大括号内运行代码。 在这种情况下,queryString不是节点模块,因为它不是必需的,并且不必分配给该值(就像使用const querystring = require('querystring')那样),而是一个空对象(如您在{ {1}})