我有一个全局变量。该变量等于null。 var a=null;
然后我在控制台中写a=a+"example"
。但是输出是空的例子。为什么会这样?
答案 0 :(得分:1)
如果你想以这种方式连接字符串,你不应该分配null而是一个空字符串。值null
将更改为代码中的字符串'null'
。
示例:
var a = '';
for(var i=0; i<10; i++) {
a = a + 'abc';
}
答案 1 :(得分:1)
javascript有三种可能性:
选项1
var a;
a=a+"example";
输出“undefinedexample”
选项2
var a=null;
a=a+"example";
输出“nullexample”
选项3
var a="";
a=a+"example";
输出“示例”
根据您的问题,您需要定义第三个选项。 bcz在javascript null 和“”两者都是不同的类型。
更多参考JavaScript String concatenation behavior with null or undefined values
答案 2 :(得分:1)
当你用字符串连接它时,它变成了字符串,请参阅此示例,它采用您指定的数据类型为初始值为null
如果你用字符串连接,如果是数字,那么它需要字符串类型,然后是数字类型,依此类推
var s = null;
console.log(s+"example");
console.log(s+5);
console.log(s+17.5)
&#13;
答案 3 :(得分:1)
我不知道你真正期待的是什么,根据你的问题,我认为你需要连接两个字符串,如果正确你可以使用
var str1 = '';
var str2 = "example";
var res = str1.concat(str2);
而不是null
您可以使用''