已采纳回答 / 飞过那座山
你可以这样想,prototype属性里包含有两个属性,一个是构造器,一个是实例原型。当你继承类时,要从父类获取构造器和方法,然而这两个都是保存在prototype属性中。【有误指出】
2016-05-18
最赞回答 / llo蛋蛋oll
var info = Object.getOwnPropertyDescriptor(Object, 'prototype');console.log(info);for (prop in info) { console.log(prop + ':' + info[prop]);}
2016-05-16
最赞回答 / 不再热情似火
1. var str = "string"; 这个str是基本类型string,2. str.t = 5 基本类型怎么会有属性和方法呢? 因为此时js引擎中会自动创建一个对象,即 var str = new String('string');然后再调用这个对象的方法和属性,你的 str.t = 5 语句确实没问题,但是str (这里我叫做0号)这个对象,仅仅在代码执行的一瞬间被创建,然后马上被销毁,3. alert(str.t) //undefined 此时的str.t 又会创建一个新的str对象(这个...
2016-05-15
已采纳回答 / 不再热情似火
你这bug有点小多,推荐你去看下同学代码第一和第二的,1. typeof 这是不对的,typeof 只能判断基本类型,但是你的数组中可能会有引用类型,而且 typeof null也会返回Object ,所以你要先封装一个判断类型的函数,可用Object.prototype.toString.call()的方法,(在IE6/7/8下遇到null和undefined会失效,返回Object). 2. 你用的 instanceof 在页面存在框架时,无法进行准确的判断,所以最好 数组的判断用Array.i...
2016-05-13
最新回答 / zhangcl
不要从变量去理解类型这个东西,你要看是什么类型,应该看=后面的值,而不是看变量,比如说 var a = "str"; 此时a就是和"str"的类型一样,如果你重新赋值 a = 123,此时a就是和123的类型一样,虽然a的类型变化了,但是"str" 和 123的类型永远不会发生变化,现在理解起来是不是很容易了,不知道对你有没有帮助。变量的类型是随着值的变化而变化的,所以是弱类型语言
2016-05-09