美文网首页
Javascript中如果定义变量名为"name"会出现的问题

Javascript中如果定义变量名为"name"会出现的问题

作者: 程序媛萌小雪Mxx | 来源:发表于2018-01-12 12:13 被阅读0次

        大多数情况我们会选择避免使用关键字或者保留字做为变量的名称,但是name在javascript中既不是关键字也不是保留字,在使用name作为变量名后会出现什么问题呢?

    在控制台随便输入一个变量名"hehe",可以看到,"hehe"这个变量并未定义

    在控制台如果输入"name",可以看到,"name"是一个空的字符串然而我并没有定义name这个变量,为什么会默认赋值给空的字符串呢?

    让我们再看一个奇怪的问题,运行下面的代码会在控制台输出hehe1,这也是我们预期会出现的结果,但是,如果我们把v2变量名改为name,看看会输出什么

    var v1 ="hehe1,hehe2,hehe3"

    var v2 = v1.split(",");

    console.log(v2[0])

    var v1 ="hehe1,hehe2,hehe3"

    var name= v1.split(",");

    console.log(name[0])

    这时我们可以看到,name虽然被赋值给v1.split(","),v1.split(",")返回的是一个数组,但是呢name确输出了"hehe1,hehe2,hehe3",这里就很奇怪了,如果在输出console.log(name[0]),输出的不是"hehe1"而是"h",很奇怪额,问了很多人,大家都说name是javascript中的内置对象,在这里我也不太确定是不是,总之先记录一下,以后在研究一下,看看name到底是什么,总之在定义变量的时候要尽量避免取名为name就好了。

    对学习抱有热情的开发小伙伴欢迎加入 qq群685421881,更欢迎热爱编程的妹子进入,让我们一起学习 并进步吧!

    相关文章

      网友评论

          本文标题:Javascript中如果定义变量名为"name"会出现的问题

          本文链接:https://www.haomeiwen.com/subject/sqoxoxtx.html