如何获取到alert的的显示值

kentxp 2013-02-17 07:22:14
是这样的
最近在用BAIDU的地图JS API搞些东西

我在对一个对象进行alert(overlays[overlays.length - 1])
时 网页上显示[object Ployline]
这里的Ployline实际上是这个对象的类型,就是地图上的线
同时地图上还有点等其他对象
我想通过判断alert的显示值进行对象类型的判断来再进一步获取属性

但是alert的显示值我如何在代码上获取到呢


我试过了其他方法
Object.prototype.toString.call(overlays[overlays.length - 1])
显示的是[object object ]
typeof()
显示的是object
...全文
473 7 点赞 打赏 收藏 举报
写回复
7 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
未知数 2013-02-18
alert的显示值是对象ToString方法的返回值 var str = overlays[overlays.length - 1].toString(); 就行了
  • 打赏
  • 举报
回复
bbjbepzz 2013-02-18
alert是没有返回值的,所以获取不到。你用下面的getType方法试下

function Person(name,age){
  this.name = name;
  this.age = age;
}
Person.prototype = {
  showName : function(){
    return this.name;
  }
}
Person.prototype.constructor = Person;
var p = new Person();
function getType( obj ) {
  var fName = obj.constructor.toString();  
  fName = fName.match(/function[\s*]?(.*)\(.*\)/);
  if(fName[1]){    
    return '[object '+fName[1]+']'
  }
}
alert(getType(p));
  • 打赏
  • 举报
回复
diannaomingong 2013-02-18
谷歌个 javascript dump函数来用
  • 打赏
  • 举报
回复
kentxp 2013-02-18
我需要能够获取到ALERT的显示值 一遍判断对象的类型 而不是显示出来 平时我们alert出来是显示给用户看的 我想要获取到显示信息进行判断对象的类型啊
  • 打赏
  • 举报
回复
kentxp 2013-02-18
6楼说的很正确 还在纠结ALERT内部的实现逻辑 没想到这么简单 哎 JS基础太差了
  • 打赏
  • 举报
回复
bbjbepzz 2013-02-17
写错字了,纠正下 控制台 = 控件台 补充下 for...in的用法如下 for(var i in overlays[overlays.length - 1]){ alert(i); }
  • 打赏
  • 举报
回复
bbjbepzz 2013-02-17
最好的方法就是用google浏览器,console.log(overlays[overlays.length - 1]),然后打开控件台看。 或者用for(var i in overlays[overlays.length - 1])试下。
  • 打赏
  • 举报
回复
相关推荐
发帖
JavaScript
加入

8.5w+

社区成员

Web 开发 JavaScript
申请成为版主
帖子事件
创建了帖子
2013-02-17 07:22
社区公告
暂无公告