为了账号安全,请及时绑定邮箱和手机立即绑定

为什么输出结果是undefined

http://img1.sycdn.imooc.com//56e9615d00016a8513280482.jpg

想了很久没找到什么地方出了问题...

正在回答

2 回答

改成如下就可以输出了


Lists[i].setAttribute("title","WEB前端技术");只有set的作用

然后你要再get一次


233333333333


 var Lists=document.getElementsByTagName("li");

  for (var i=0; i<Lists.length;i++)

  {

    var text=Lists[i].getAttribute("title");

    

    

    if(text=="")

    {

    Lists[i].setAttribute("title","WEB前端技术");

    text=Lists[i].getAttribute("title");

    document.write(text + "<br>");

    }else{

        document.write(text +"<br>");

    }

  }



1 回复 有任何疑惑可以回复我~
#1

LIFE_1st 提问者

非常感谢!2333
2016-03-19 回复 有任何疑惑可以回复我~

我来告诉你为什么是undefined,出现undefined无非两种情况:1、变量没赋初始值;2、函数没有返回值。

再看你的代码第24行,text=Lists[i].setAttribute("title","WEB前端技术");

setAttribute("title","WEB前端技术")是方法的调用,并不会返回值给text,属于第二种情况,所以在打印的时候就会出现“undefined”这样的字符,意思就是“未定义”!



1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么输出结果是undefined

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信