84669 personnes étudient
152542 personnes étudient
20005 personnes étudient
5487 personnes étudient
7821 personnes étudient
359900 personnes étudient
3350 personnes étudient
180660 personnes étudient
48569 personnes étudient
18603 personnes étudient
40936 personnes étudient
1549 personnes étudient
1183 personnes étudient
32909 personnes étudient
如图所示的函数,传入三个字符串,另外两个存到数据库中时都没有问题,只有brief会莫名其妙变成NaN,请问可能会是什么原因呢?
传入参数:
拼接出来的查询字符串:
如图,本应为"this is brief"的地方变成了NaN。
认证0级讲师
如果你不小心 写了类似(+'abc')这样的表达式。这里js会把加号理解为“不改变正负号”的一元运算符,而不是你想要的“字符串连接”的二元运算符。所以这里js会隐式的帮你把‘abc’转成数字类型,也就是NaN。从截图上看,显然你多写了一个加号造成了这个问题。之所以上面几个没出问题,那是因为上面几个本来就是数字类型,所以所以多个加号也无伤大雅,不过这也提醒你,在拼接字符串时最好还是工整一些,或者考虑使用一些模板方法,防止不小心写错的情形。同时,你这样SQL是拼出来的,而没有参数化,也有可能有SQL注入的潜在风险。
NaN是not a number的意思。 检查一下你的运算 是否出错了
多了一个+ 一个+是拼接字符串,++的话就不一样了
如果你不小心 写了类似(+'abc')这样的表达式。
这里js会把加号理解为“不改变正负号”的一元运算符,而不是你想要的“字符串连接”的二元运算符。
所以这里js会隐式的帮你把‘abc’转成数字类型,也就是NaN。
从截图上看,显然你多写了一个加号造成了这个问题。
之所以上面几个没出问题,那是因为上面几个本来就是数字类型,所以所以多个加号也无伤大雅,不过这也提醒你,在拼接字符串时最好还是工整一些,或者考虑使用一些模板方法,防止不小心写错的情形。同时,你这样SQL是拼出来的,而没有参数化,也有可能有SQL注入的潜在风险。
NaN是not a number的意思。 检查一下你的运算 是否出错了
多了一个+ 一个+是拼接字符串,++的话就不一样了