V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  pythonee  ›  全部回复第 83 页 / 共 87 页
回复总数  1731
1 ... 75  76  77  78  79  80  81  82  83  84 ... 87  
@luikore 通马桶、装锁这种事不是应该自己动手的吗
话说,你们都能去哪里接活的说,现在生活压力大,平时时间还挺多,可是没有找到靠谱的啊
2013-07-22 17:32:11 +08:00
回复了 pythonee 创建的主题 分享发现 大家有没有好的便携扫描仪推荐?
@momou 就是扫纸,主要是文字
@Golevka
哦,这下总算找到正统了,我之前还看了一篇 javascript执行上下文的文章,这里的环境应该就是指的上下文吧,上下文的建立应该是在定义时,赋值是在执行时。哈哈,非常感谢你的回答,我突然觉得javascript很多概念挺统一的啊,之前被它的变化多端弄得神魂颠倒
@Golevka
其实我觉得 那个mvp说的也没有问题的样子,它并不是说关心call site,是说在 ()或 return的时候会锁定变量,假如不是像他说的那样的话,按理来说,第一个for就会求值的话,那么这时候 闭包里的 i 都是10了,也就没有第二个for什么事了
@Golevka
那我不是深深被误导了,我靠,我也觉得有点毁三观的感觉

@clowwindy
你说的块作用域是指什么?我内部函数确实有作用域啊,我用var声明的变量也有啊


@clowwindy
什么叫编译期绑定,就拿这个例子来讲,第一个for循环 创建函数的时候,并没有绑定到每个 i,是运行期求出来的啊
2013-07-14 13:33:53 +08:00
回复了 pythonee 创建的主题 程序员 javascript的闭包行为怎么这么诡异?
@anjianshi

主要是想表达传值还是传引用的意思
@chemzqm
嗯,我不懂得时候,还是会先去那里看看,实在迷惑了,才会发帖求助
@Golevka

嗯,但是这里更多的是激活的时机,也就是说第一个for不会记忆当时的 i ,因为还没有被激活,所以在它调用的时候,也就是激活(求值)的时候,从第二个 for 循环中找到了 i
@zztczcx
@bakac

我认真读完那个帖子,我大概明白了,这个东西不仅涉及作用域,还有就是闭包的激活时机,也就是延迟求值的发生时间,而作用域的话,还是那些,先从最近的找,不过这里的重点是闭包的求值时机
2013-07-13 11:36:47 +08:00
回复了 pythonee 创建的主题 程序员 javascript的闭包行为怎么这么诡异?
@anjianshi

啊,我试了一下,对于name和age仍然是复制的行为,list表现为引用的行为,我觉得基本和对象类型不是重点
2013-07-13 11:25:57 +08:00
回复了 pythonee 创建的主题 程序员 javascript的闭包行为怎么这么诡异?
@hardway
@anjianshi

不是吧,最后又归结到这个原因上哦,看来所有语言都差不多的,对象的复制成本太高
2013-07-12 13:33:47 +08:00
回复了 pythonee 创建的主题 程序员 javascript实例对象的constructor属性值是怎么来的?
@otakustay

如果这样定义"有"和"没有"的话,那从一开始f2.contructor就是没有的,可是如果按contructor的定义出发的我,是有的,所以,我觉得我们的分歧点在这里,不过我也能接受你的观点
2013-07-12 11:37:46 +08:00
回复了 pythonee 创建的主题 程序员 javascript实例对象的constructor属性值是怎么来的?
@otakustay

我的求值过程是代入,而不是顺着原型链,

f2.constructor(有) == f2.__proto__(就是Foo.prototype).constructor(有) == {}.constructor(有) == Object.prototype.constructor == Object(){[native code]}

我认为constructor是特殊的属性,而不是普通的
2013-07-12 10:01:06 +08:00
回复了 pythonee 创建的主题 程序员 javascript实例对象的constructor属性值是怎么来的?
@otakustay 而且我试验了,发现并没有顺着原型链来找构造函数这个说法啊
2013-07-12 09:54:45 +08:00
回复了 pythonee 创建的主题 程序员 javascript实例对象的constructor属性值是怎么来的?
@otakustay 你说的原因和我想的一样,但是结果却不一样,函数建立的时候
确实是
function == function.prototype.constructor,而这时候由这个function创建的instance有以下关系
instance.constructor == instance.__proto__.constructor
又有
instance.__proto__ == function.prototype
所以
instance.constructor == function.prototype.constructor
如果我修改function.prototype,比如上面的f2,即Foo.prototype = {};所以
f2.constructor = {}.constructor,
而{}.constructor == Object.prototype.constructor,也即是Object(){ [native code]}
而这后面的结果你的顺藤摸瓜式想法不一样啊
2013-07-11 22:02:57 +08:00
回复了 pythonee 创建的主题 程序员 javascript实例对象的constructor属性值是怎么来的?
@guchengf

有点乱了,实例的constructor也可以乱改,但是instanceof却是用最初创建它的来判断真假,这里谁记录最初创建它的构造器的呢?这样的话 instance.constructor也未必等于instance.__proto__.constructor,不过如果你不改的话,两者却是相等的,文档第一句话也确实这么说

Returns a reference to the Object function that created the instance's prototype.
2013-06-25 11:21:14 +08:00
回复了 javaa 创建的主题 程序员 一道SQL面试题,到底能难倒了多少人?
出来工作,这些东西不用就忘了,我都写不出来
2013-06-21 09:09:40 +08:00
回复了 Livid 创建的主题 MySQL MHA
有人对比过mysql-mmm吗?都不推荐mysql-mmm,不知道它有没有改进
1 ... 75  76  77  78  79  80  81  82  83  84 ... 87  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2727 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 26ms · UTC 06:10 · PVG 14:10 · LAX 22:10 · JFK 01:10
Developed with CodeLauncher
♥ Do have faith in what you're doing.