在将php脚本转换为js时,我使用了phpjs.org中的一些函数。但是,在相同的条件下,“strpos”函数似乎不返回true。
$string = "aaa:bbb";
$colons = strpos($string, ":");
echo $colons;
if ($colons == true)
{echo "yup";}不过,与“3 3yup”相呼应:
var string = "aaa:bbb";
var colons = strpos(string, ":");
console.log(colons);
if (colons == true)
{console.log("yup");}只有"3“的回声。
这是我的错误、错误还是javascript处理方式的一个方面?在任何情况下,推荐哪种方法来获得true结果,以便在string中出现冒号。
谢谢!
发布于 2013-10-16 05:41:25
php和phpjs实现都返回正确的值(3),但是==的语义不同。
测试$colons == true的等效JS是:
Boolean(colons) == true发布于 2013-10-16 05:30:24
如果您只想获得基于strpos的字符串,那么我想您可以执行以下操作:
if (strpos(string, ":") != false) {
console.log("string exists!");
}发布于 2013-10-16 05:31:45
JS中的strpos()不返回true。相反,它返回的位置,在您的情况下,它将返回4。
https://stackoverflow.com/questions/19395856
复制相似问题