用两个双引号和加号包围javascript变量jquery $.post


surrounding javascript variable with two double quotes and plus sign jquery $.post

下面的代码片段来自一个自动查找机制,

$.post("rpc.php", {queryString: ""+inputString+""}, callback function)

inputString是一个变量,它收集用户输入的字符串,然后使用上述机制将数据发布到php/mysql脚本并返回请求的字符串数据。

我的问题是对inputString变量周围的双引号和加号的解释。我对加号是否用于空格字符或连接感到困惑。我理解需要双引号作为inputString是一个变量,但为什么用另一对引号包围。

在inputString周围加上引号是将其类型转换为字符串。它只是把它和一个空字符串连接起来。你不需要引号。如果输入字符串是5,那么"+inputString将等于"5"。

如果inputString是一个变量,它不需要被任何东西包围,这应该是好的:

$.post("rpc.php", {queryString: inputString}, callback function)

应该是这样的

$.post("rpc.php", {queryString: '"'+inputString+'"'}, callback function)

在这里,我们将变量前后的双引号连接起来,使其成为字符串。这里"+"符号用于连接。