最近对 node 很感兴趣,想学一下 node 。但 js 写得少,打算完整过一遍。
于是去了这个网站: https://www.w3school.com.cn/
但是发现实际工程中,JS 好几种写法。
比如教程中定义函数是: function fun1(){}
但我看到有的人这么写: var fun1 = function(){}
比如定义变量,教程中是: var a = "123";
但实际工程中看到有的人却这么写: let a = "123";
看了下 vue 的项目,也摸不着头脑。
不知道是我看的教程过时了还是怎么回事,翻了好多教程,都没见新的写法。
还比如看到类似代码:
axios({
method: method,
url: url,
data: method === 'POST' || method === 'PUT' ? params : null,
params: method === 'GET' || method === 'DELETE' ? params : null,
baseURL: root,
withCredentials: false
})
.then(function (res) {
if (res.data.success === true) {
if (success) {
success(res.data)
}
} else {
if (failure) {
failure(res.data)
} else {
window.alert('error: ' + JSON.stringify(res.data))
}
}
还听说有 es6 这些东西以及 typescript 。
我怀疑我学的东西都过时了,去狗东搜索了下基本热销的书籍,还停留在 jq 的时代。
有没有大神指明一下学习路线,或者是推荐一些 js 的书籍。
1
enchilada2020 2021-08-15 22:58:23 +08:00 via Android
把 MDN guide 和 reference 都过一遍就差不多了
|
2
crab 2021-08-15 23:03:57 +08:00
|
3
kop1989 2021-08-15 23:04:33 +08:00
1 、es6 与之前的版本标准多数内容是添加且兼容状态。换句话说,你所学的 JS,并没有“过时”。每种声明变量、声明方法的写法,都有各自的特点以及其区别。
2 、如果有足够的编程基础,《 JavaScript 权威指南》(犀牛书)是不二之选。 3 、js 的项目多数都引用了很多的库、框架。极少有纯原生 js,所以你看不懂。 4 、上文中 3 、的原因,主要是因为 js 其实是一个四面透风的生态,js 的诞生就是为了实现浏览器的动态化而凑合出来的。所以学习 js,甚至包括 web 前端其实都没有一个既定的套路或者路线。最理想化的是以需求为路线逐渐实践。 |
4
molvqingtai 2021-08-15 23:12:27 +08:00 3
https://zh.javascript.info/ 你要的在这里
|
5
musi 2021-08-16 09:00:19 +08:00
mdn 新手教程
|
6
waiaan 2021-08-16 09:36:20 +08:00
找个视频学吧,你那个网站毫无系统性。
|
7
speedofstephen 2021-08-16 11:08:33 +08:00
推荐一本 很好的书《你不知道的 Javascript 》只看上卷就好了, 中下卷不如上卷,但是时间多也可以看。
|
8
wdssmq 2021-08-16 14:44:22 +08:00
var 而不是 let
在较旧的脚本中,你也可能发现另一个关键字 var,而不是 let: `var message = 'Hello';` var 关键字与 let 大体 相同,也用来声明变量,但稍微有些不同,也有点“老派”。 let 和 var 之间有些微妙的差别,但目前对于我们来说并不重要。我们将会在 旧时的 "var" 章节中介绍它们。 ------------------- 变量 https://zh.javascript.info/variables#bian-liang |
9
volvo007 2021-08-17 12:25:43 +08:00 via iPhone
你去的网站“过时”啦,虽然现在基本的代码和数据结构差不多,但是你去这个网站学出来,是没有办法适应现在的生产环境的……
我之前学也迷茫了一阵,现在推荐你去“廖雪峰 javascript”过一遍。廖雪峰学完确实离上生产还有一定距离,但是优势是短平快,一周看完有个大概了解 比如你说的这个 axio 的用法,是基于 Promise 这种对象的特殊用法。可以理解为一个容器,里面保存的是未来会发生的某件事情的返回结果(一般异步) 所以这种类型的对象,状态会由“未完成”变为“成功”或者“失败”(还有一个可选的 final 值,不管成功失败都要执行),然后 then 里面就根据成功 /失败分别进行后面的操作 撸几遍廖雪峰之后,看其他的就快了,也可以看高端书了 廖雪峰虽然没有讲流行的 react/vue 等,还是 jquery,但是一来 jquery 并不影响你学习 js 的基础,二来现在还是有很多公司和网站仍然采用 jq,他们的代码仍然有很多值得学习的地方 |