w****f 发帖数: 684 | |
b*****u 发帖数: 648 | |
p*****2 发帖数: 21240 | 3 这个吗。我前天晚上看了一下。感觉真的没什么好学的,扫一眼就可以了,不太需要正
式的学。 |
c*****e 发帖数: 3226 | 4 这次牛皮 有点吹过了。。
自己独立能写个 Prototypal Inheritance pattern 出来?
【在 p*****2 的大作中提到】 : 这个吗。我前天晚上看了一下。感觉真的没什么好学的,扫一眼就可以了,不太需要正 : 式的学。
|
y*******g 发帖数: 6599 | 5 我觉得二爷说的是http://w3schools.com/js/default.asp 这个
不是说javascript吧
【在 c*****e 的大作中提到】 : 这次牛皮 有点吹过了。。 : 自己独立能写个 Prototypal Inheritance pattern 出来?
|
p*****2 发帖数: 21240 | 6
ZKSS这东西是啥?用JS一定要懂这个吗?难度在哪里?
【在 c*****e 的大作中提到】 : 这次牛皮 有点吹过了。。 : 自己独立能写个 Prototypal Inheritance pattern 出来?
|
p*****2 发帖数: 21240 | 7
我的意思是入门,可以上手做东西,感觉比其他语言都容易呀。语法跟C差不多,加上
一些functional的功能,没看到啥特别的呀。
【在 y*******g 的大作中提到】 : 我觉得二爷说的是http://w3schools.com/js/default.asp 这个 : 不是说javascript吧
|
y*******g 发帖数: 6599 | 8 不好说难度在哪里,感觉主要是paradigm shift.js要写成oo style基本上需要这个。
【在 p*****2 的大作中提到】 : : 我的意思是入门,可以上手做东西,感觉比其他语言都容易呀。语法跟C差不多,加上 : 一些functional的功能,没看到啥特别的呀。
|
c*****e 发帖数: 3226 | 9 真的完全理解了这个就理解了object oriented javascript. concept 不一样, 不容
易转过弯来。
【在 p*****2 的大作中提到】 : : 我的意思是入门,可以上手做东西,感觉比其他语言都容易呀。语法跟C差不多,加上 : 一些functional的功能,没看到啥特别的呀。
|
p*****2 发帖数: 21240 | 10
就是说用JS实现OO是吗?我感觉怎么说JS也是OO语言,比C实现OO还难吗?
【在 y*******g 的大作中提到】 : 不好说难度在哪里,感觉主要是paradigm shift.js要写成oo style基本上需要这个。
|
|
|
p*****2 发帖数: 21240 | 11
我用C和perl都做过OO,不知道JS为什么会更难。感觉JS对OO还是有一定的支持的,又
functional,应该不会太复杂呀。
【在 c*****e 的大作中提到】 : 真的完全理解了这个就理解了object oriented javascript. concept 不一样, 不容 : 易转过弯来。
|
y*******g 发帖数: 6599 | 12 你这个基础比大部分人好多了。小马过河。也许对你真不难 我学的时候觉得挺难的,
后来说服老板放弃了。
【在 p*****2 的大作中提到】 : : 我用C和perl都做过OO,不知道JS为什么会更难。感觉JS对OO还是有一定的支持的,又 : functional,应该不会太复杂呀。
|
p*****2 发帖数: 21240 | 13
有什么书吗?我想看看。最近对JS感点兴趣了。
【在 y*******g 的大作中提到】 : 你这个基础比大部分人好多了。小马过河。也许对你真不难 我学的时候觉得挺难的, : 后来说服老板放弃了。
|
M********5 发帖数: 715 | 14 你真是什么都会哈,向你看齐啊~~~
【在 p*****2 的大作中提到】 : : 有什么书吗?我想看看。最近对JS感点兴趣了。
|
h****e 发帖数: 928 | 15 JavaScript的水其实很深。
Javascript the Good parts 和 Secrets of the Javascript Ninja都不错。
至少要学到能看懂下面的程序:
http://ejohn.org/apps/learn/#2
// The .bind method from Prototype.js
Function.prototype.bind = function(){
var fn = this, args = Array.prototype.slice.call(arguments), object = args
.shift();
return function(){
return fn.apply(object,
args.concat(Array.prototype.slice.call(arguments)));
};
};
实战就是用Javascript写一个LeetCode Online Judge For Javascript。 |
A*****i 发帖数: 3587 | 16 JS其实水很深,以前我也觉得这东西没啥学的,最近看了一本叫javascript the good
part
发现其实这东西很有意思 |
p*****2 发帖数: 21240 | 17 刚看了一下Prototypal Inheritance pattern,就是那本Secrets of the JavaScript
Ninja, 第六章。
感觉很straightforward,没觉得有什么难理解的呀?
说JS水深我还不明白,你们是跟什么语言比呀?我怎么也看不出来会比scala还深,也
不觉得比C深。大牛们谈谈? |
p*****2 发帖数: 21240 | 18
args
这段程序我感觉系统看一下书应该能明白吧。
我随便看了JS一下,感觉比较高级的就是higher order function, closure, 还有今天
提到的prototype, 都是比较容易理解的概念。还有什么其他高深的吗?我去看看。
【在 h****e 的大作中提到】 : JavaScript的水其实很深。 : Javascript the Good parts 和 Secrets of the Javascript Ninja都不错。 : 至少要学到能看懂下面的程序: : http://ejohn.org/apps/learn/#2 : // The .bind method from Prototype.js : Function.prototype.bind = function(){ : var fn = this, args = Array.prototype.slice.call(arguments), object = args : .shift(); : return function(){ : return fn.apply(object,
|
p*****2 发帖数: 21240 | 19
我刚看了一下。请问你觉得什么concept不一样呢?有什么弯需要转呢?能ZKSS吗?
【在 c*****e 的大作中提到】 : 真的完全理解了这个就理解了object oriented javascript. concept 不一样, 不容 : 易转过弯来。
|
p*****2 发帖数: 21240 | 20
大牛就是大牛,眼界就是不一样。像继承这种臭名昭著的东西,虽说JS的prototype可
以间接支持,但是能不用最好不要用。
【在 y*******g 的大作中提到】 : 你这个基础比大部分人好多了。小马过河。也许对你真不难 我学的时候觉得挺难的, : 后来说服老板放弃了。
|
|
|
x*********w 发帖数: 533 | |
c*****e 发帖数: 3226 | 22 你写个 class inheritance 的sample,包括 overwrite , polymorp.. 让大家来点评
吧。
【在 p*****2 的大作中提到】 : : 大牛就是大牛,眼界就是不一样。像继承这种臭名昭著的东西,虽说JS的prototype可 : 以间接支持,但是能不用最好不要用。
|
b*****u 发帖数: 648 | 23 多亏你的这帖,又发现一本好书
good
【在 A*****i 的大作中提到】 : JS其实水很深,以前我也觉得这东西没啥学的,最近看了一本叫javascript the good : part : 发现其实这东西很有意思
|
p*****2 发帖数: 21240 | 24
我现在在搞play,没搞这个。js主要是做frontend。
【在 x*********w 的大作中提到】 : 说说nodejs??
|
p*****2 发帖数: 21240 | 25
我上边不是提到了吗?继承这东西能不用最好不要用。倒不如你写个继承的大家点评一
下?
【在 c*****e 的大作中提到】 : 你写个 class inheritance 的sample,包括 overwrite , polymorp.. 让大家来点评 : 吧。
|
x*********w 发帖数: 533 | 26
nodejs做服务器的...
【在 p*****2 的大作中提到】 : : 我上边不是提到了吗?继承这东西能不用最好不要用。倒不如你写个继承的大家点评一 : 下?
|
p*****2 发帖数: 21240 | 27 所以我在搞play呀
【在 x*********w 的大作中提到】 : : nodejs做服务器的...
|
d********g 发帖数: 10550 | 28 话说得太大了。JS是很诡异的语言
http://www.amazon.com/Professional-JavaScript-Developers-Nichol
这本书看过的话就知道别的OO语言里常见的创建一个对象,JS里不止回字4种写法,而
且各有利弊。就一个基本功closure就很魔幻
学习了这本书再看各种JS库的设计,才能理解为什么要这么写,不然只能是雾里看花。
JS的水确实不浅
JavaScript
【在 p*****2 的大作中提到】 : 刚看了一下Prototypal Inheritance pattern,就是那本Secrets of the JavaScript : Ninja, 第六章。 : 感觉很straightforward,没觉得有什么难理解的呀? : 说JS水深我还不明白,你们是跟什么语言比呀?我怎么也看不出来会比scala还深,也 : 不觉得比C深。大牛们谈谈?
|
p*****2 发帖数: 21240 | 29 这又如何?
【在 d********g 的大作中提到】 : 话说得太大了。JS是很诡异的语言 : http://www.amazon.com/Professional-JavaScript-Developers-Nichol : 这本书看过的话就知道别的OO语言里常见的创建一个对象,JS里不止回字4种写法,而 : 且各有利弊。就一个基本功closure就很魔幻 : 学习了这本书再看各种JS库的设计,才能理解为什么要这么写,不然只能是雾里看花。 : JS的水确实不浅 : : JavaScript
|
d********g 发帖数: 10550 | 30 没,以二爷功力,精通JS语言也是俩小时的事。我以为这世上的公司需要的不是高考题
霸,踏踏实实做出一个系统或者一个库更有挑战
【在 p*****2 的大作中提到】 : 这又如何?
|
|
|
p*****2 发帖数: 21240 | 31
JS我那天一看就是一个很灵活的语言,这也是吸引我的地方,因此一个事情有几种实现
方式一点也不奇怪。相反如果只有一种方式我才奇怪了。
我可没说我精通呀。但是我觉得2个小时入门应该没什么问题。
踏踏实实做出一个系统或者一个库更有挑战
你的意思是我没有做过?我在学算法之前那么多年一直是这么干的。
【在 d********g 的大作中提到】 : 没,以二爷功力,精通JS语言也是俩小时的事。我以为这世上的公司需要的不是高考题 : 霸,踏踏实实做出一个系统或者一个库更有挑战
|
d********g 发帖数: 10550 | 32 二爷在这版常挑语言之争会误导这些找工作的fresh grads。找工是需要敲门砖,多学
点语言砖头多一些,但是静下心来搞好任一个,直接就可以强行爆破开门了
【在 p*****2 的大作中提到】 : : JS我那天一看就是一个很灵活的语言,这也是吸引我的地方,因此一个事情有几种实现 : 方式一点也不奇怪。相反如果只有一种方式我才奇怪了。 : 我可没说我精通呀。但是我觉得2个小时入门应该没什么问题。 : 踏踏实实做出一个系统或者一个库更有挑战 : 你的意思是我没有做过?我在学算法之前那么多年一直是这么干的。
|
b*****u 发帖数: 648 | 33 我其实一直觉得为了找工作而学一门语言不靠谱。
应该在应用中学习
【在 d********g 的大作中提到】 : 二爷在这版常挑语言之争会误导这些找工作的fresh grads。找工是需要敲门砖,多学 : 点语言砖头多一些,但是静下心来搞好任一个,直接就可以强行爆破开门了
|
p*****2 发帖数: 21240 | 34
我想多说两句,说的不对大牛指正,毕竟我是JS新手。我在你提到prototype之前只是
随便看了一个小时的JS,因此我根本不知道new, prototype和constructor。那我就说
说我以前怎么理解的JS的OO。
首先JS没有class的概念,有object,有函数。object感觉太随机化了,没有class
type的感觉。怎么办?用factory pattern。
比如
class A
{
attr
method
}
我用JS,定义一个factory函数
function Afactory(val){
return {attr=val; method=function(){}}
}
这样我就可以生成class A的instance, 也就相当于new了
继承怎么办?我说过最好不要用继承,因此如果你想B继承A,那么不用继承的话
function Bfactory(val, val2){
return {a=Afactory(val); attr2=val2}
}
这样你可以访问A了。decrator pattern, 符合favor composition over inheritance
的设计思想
如果你非要继承
function Bfactory(val, val2){
obj=Afactory(val);
obj.attr2=val2;
return obj;
}
多态性。像JS这么functional的语言多态性也就太容易了。
function Bfactory(val, val2){
obj=Afactory(val);
obj.attr2=val2;
obj.method=function(){}
return obj;
}
我的意思是说,及时今天我没有去看你提到的prototype,我也可以按照OO的设计来写
JS的code。不知道有什么理解的误区没有。程序没测试。就是写个想法。
这就是我学了一个多小时JS以后的想法。
【在 c*****e 的大作中提到】 : 你写个 class inheritance 的sample,包括 overwrite , polymorp.. 让大家来点评 : 吧。
|
p*****2 发帖数: 21240 | 35
说实话我感觉多学点语言挺开阔思路的。只会一种语言不推荐。感觉应该会3门语言比
较好。
【在 d********g 的大作中提到】 : 二爷在这版常挑语言之争会误导这些找工作的fresh grads。找工是需要敲门砖,多学 : 点语言砖头多一些,但是静下心来搞好任一个,直接就可以强行爆破开门了
|
p*****2 发帖数: 21240 | 36
args
这个今天看了看,看明白了。就是几个概念问题。
【在 h****e 的大作中提到】 : JavaScript的水其实很深。 : Javascript the Good parts 和 Secrets of the Javascript Ninja都不错。 : 至少要学到能看懂下面的程序: : http://ejohn.org/apps/learn/#2 : // The .bind method from Prototype.js : Function.prototype.bind = function(){ : var fn = this, args = Array.prototype.slice.call(arguments), object = args : .shift(); : return function(){ : return fn.apply(object,
|
c*****e 发帖数: 3226 | 37 继承这东西能不用最好不要用? 这是你的论点?
全世界那么多写c++, java 的估计都哭了。
【在 p*****2 的大作中提到】 : : args : 这个今天看了看,看明白了。就是几个概念问题。
|
d*******g 发帖数: 1978 | 38 我觉得招聘就是忽悠。不是他忽悠你,就是你忽悠他.
就写程序这事儿来说,如果觉得js不难的,那么肯定是有底子的。
也许有很多概念问题不一定当时就弄得清楚,但工作后学起来快。
什么继承啊什么closure啊,什么没名字的函数啊,有什么难学的?
老美的意思是,他得找一个现成会的,又懂的。苦得马工必须各
种书都看一看。。。我觉得只要能达到招聘的时候能忽悠到对方
的效果,就够了。 |
q**a 发帖数: 75 | 39 如果真要搞,看这个吧 http://www.ecma-international.org/ecma-262/5.1/
【在 p*****2 的大作中提到】 : : args : 这个今天看了看,看明白了。就是几个概念问题。
|
p*****2 发帖数: 21240 | 40
这是我的论点?你是搞C++,Java的吗?
【在 c*****e 的大作中提到】 : 继承这东西能不用最好不要用? 这是你的论点? : 全世界那么多写c++, java 的估计都哭了。
|
|
|
p*****2 发帖数: 21240 | 41
说的很好呀。很赞同。
【在 d*******g 的大作中提到】 : 我觉得招聘就是忽悠。不是他忽悠你,就是你忽悠他. : 就写程序这事儿来说,如果觉得js不难的,那么肯定是有底子的。 : 也许有很多概念问题不一定当时就弄得清楚,但工作后学起来快。 : 什么继承啊什么closure啊,什么没名字的函数啊,有什么难学的? : 老美的意思是,他得找一个现成会的,又懂的。苦得马工必须各 : 种书都看一看。。。我觉得只要能达到招聘的时候能忽悠到对方 : 的效果,就够了。
|
p*****2 发帖数: 21240 | 42
多谢。就是随便做点UI,没想做的多么好,能实现基本功能就可以了。
【在 q**a 的大作中提到】 : 如果真要搞,看这个吧 http://www.ecma-international.org/ecma-262/5.1/
|
z*******3 发帖数: 13709 | 43 javascript的确很烂,交叉引用的对象块都不能被gc掉
极容易出现memory leak,而且话说也没有什么公司会用javascript来面的
就算要强行爆破的话,也要选对爆破筒才行
抱着一个枕头去炸碉堡,就算冲到了也炸不开
大神你说对不对?
【在 d********g 的大作中提到】 : 二爷在这版常挑语言之争会误导这些找工作的fresh grads。找工是需要敲门砖,多学 : 点语言砖头多一些,但是静下心来搞好任一个,直接就可以强行爆破开门了
|
p*****2 发帖数: 21240 | 44
zhaoce大牛的比喻非常形象呀。
【在 z*******3 的大作中提到】 : javascript的确很烂,交叉引用的对象块都不能被gc掉 : 极容易出现memory leak,而且话说也没有什么公司会用javascript来面的 : 就算要强行爆破的话,也要选对爆破筒才行 : 抱着一个枕头去炸碉堡,就算冲到了也炸不开 : 大神你说对不对?
|
w****f 发帖数: 684 | 45 Wa! 有(几个)大牛的参与,这竟然变成一个热贴! 太激动了。。。
【在 p*****2 的大作中提到】 : : zhaoce大牛的比喻非常形象呀。
|
w****f 发帖数: 684 | 46 大牛,能给详细说说什么时候memory leak?
【在 z*******3 的大作中提到】 : javascript的确很烂,交叉引用的对象块都不能被gc掉 : 极容易出现memory leak,而且话说也没有什么公司会用javascript来面的 : 就算要强行爆破的话,也要选对爆破筒才行 : 抱着一个枕头去炸碉堡,就算冲到了也炸不开 : 大神你说对不对?
|
J*********r 发帖数: 5921 | 47 同意。就是看对眼。
【在 d*******g 的大作中提到】 : 我觉得招聘就是忽悠。不是他忽悠你,就是你忽悠他. : 就写程序这事儿来说,如果觉得js不难的,那么肯定是有底子的。 : 也许有很多概念问题不一定当时就弄得清楚,但工作后学起来快。 : 什么继承啊什么closure啊,什么没名字的函数啊,有什么难学的? : 老美的意思是,他得找一个现成会的,又懂的。苦得马工必须各 : 种书都看一看。。。我觉得只要能达到招聘的时候能忽悠到对方 : 的效果,就够了。
|