var x;定义了一个对象,没有确定的值,typeof x; 返回 undefined.
var x=""; 定义了一个变量,并且赋值为字符串。typeof x; 返回 string. 通常适用于连加条件中(+=)
举例:
<script>
var txt = "";
var person = {fname:"Bill", lname:"Gates", age:62};
var x;
for (x in person) { // in语句循环遍历对象的属性
txt += person[x] + " ";
}
document.getElementById("demo").innerHTML = txt;
</script>
返回 Bill Gates 62
解释:txt的初始值为没有内容的字符串,第一次循环时txt被赋值为“”+Bill+ " ",第一次输出结果为Bill
<script>
var txt;
var person = {fname:"Bill", lname:"Gates", age:62};
var x;
for (x in person) {
txt += person[x] + " ";
}
document.getElementById("demo").innerHTML = txt;
</script>
返回undefinedBill Gates 62
解释:txt的初始值为没有定义的值,返回 undefined.第一次循环时txt被赋值为undefined+Bill+ " ",第一次输出结果为undefinedBill