全局变量为null

时间:2016-11-25 08:34:39

标签: javascript jquery

我有一个全局变量。该变量等于null。 var a=null;然后我在控制台中写a=a+"example"。但是输出是空的例子。为什么会这样?

4 个答案:

答案 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

如果你用字符串连接,如果是数字,那么它需要字符串类型,然后是数字类型,依此类推

&#13;
&#13;
var s = null;

console.log(s+"example");
console.log(s+5);
console.log(s+17.5)
&#13;
&#13;
&#13;

答案 3 :(得分:1)

我不知道你真正期待的是什么,根据你的问题,我认为你需要连接两个字符串,如果正确你可以使用

var str1 = '';
var str2 = "example";
var res = str1.concat(str2);

而不是null您可以使用''