V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐关注
Meteor
JSLint - a JavaScript code quality tool
jsFiddle
D3.js
WebStorm
推荐书目
JavaScript 权威指南第 5 版
Closure: The Definitive Guide
DaveMo
V2EX  ›  JavaScript

后端因为工作需要被迫需要写 js,有什么快速适应语法的方式啊

  •  
  •   DaveMo · 2023-11-01 19:56:57 +08:00 · 3130 次点击
    这是一个创建于 395 天前的主题,其中的信息可能已经有所发展或是发生改变。
    基本语法跟着红宝书过了一遍,感觉书的内容真的很零散。重点关注了 JS 的函数这块。但是发现很多语法很不适应,觉得用起来很奇怪。除了被迫接受多些以外,有没有更有效率便于理解的方式入门
    31 条回复    2024-01-16 15:57:29 +08:00
    z1645444
        1
    z1645444  
       2023-11-01 20:02:18 +08:00 via Android
    是用什么框架吗?只要是框架,其实写完一两个 TODO APP 后会基本符合工作上的开发需求,所以不必太担心这那语法上的不适应。

    如果希望更深了解 JS 这门语言的话呢,又是另一回事了
    debuggerx
        2
    debuggerx  
       2023-11-01 20:03:47 +08:00
    直接 es6 起步,完全可以当成类 java 的现代语言去用,老的那些语法不用管。
    DaveMo
        3
    DaveMo  
    OP
       2023-11-01 20:06:08 +08:00
    @z1645444 没有用框架,需要原生 js 脚本
    aulayli
        4
    aulayli  
       2023-11-01 20:10:28 +08:00
    无他,惟手熟尔。找个培训班的项目跟着学
    enchilada2020
        5
    enchilada2020  
       2023-11-01 20:11:56 +08:00 via Android
    原来写啥的
    ccagml
        6
    ccagml  
       2023-11-01 20:15:07 +08:00 via Android
    ChatGPT ,帮我把这段代码转成 JavaScript
    nightwitch
        7
    nightwitch  
       2023-11-01 20:15:33 +08:00
    可以把 tsplayground 的例子过一下 https://www.typescriptlang.org/play?
    原来写 C 系的话 ts 的语法还是很接近的。
    重点看一下 ts 翻译成 js 以后长啥样,以后在原生 js 里看到对应的代码结构能够反向翻译回去。
    XCFOX
        8
    XCFOX  
       2023-11-01 20:15:36 +08:00   ❤️ 1
    为什么不上 TypeScript ? ts 语法和 Java 、C#很接近啊,我管 ts 叫 C# lite 。
    rimworld
        9
    rimworld  
       2023-11-01 20:19:26 +08:00 via iPhone
    红宝书和 mdn 适合查询,真学习 js 用 freecodecamp.org ,或者 zh.javascript.info 吧。
    flyqie
        10
    flyqie  
       2023-11-01 20:26:24 +08:00 via Android
    后端原来写啥的?

    不是 web 这块的? web 这边的后端 js 或多或少应该都接触一些吧?
    oneisall8955
        11
    oneisall8955  
       2023-11-01 20:34:01 +08:00 via Android
    @XCFOX 类型体操🐶
    netabare
        12
    netabare  
       2023-11-01 20:37:40 +08:00 via Android   ❤️ 1
    JS 的语法还不适应吗,不是和 Java 差不多。。
    (虽然内涵差别巨大)
    jones2000
        13
    jones2000  
       2023-11-01 21:34:02 +08:00
    js 不也能写类的嘛, 跟写 java ,c++没什么区别呀。
    overthemoon
        14
    overthemoon  
       2023-11-01 21:35:25 +08:00
    学语言谁看书啊
    NessajCN
        15
    NessajCN  
       2023-11-01 21:38:17 +08:00   ❤️ 2
    我的心得就是当你习惯了把函数当变量用,你 ts/js 就基本算入门得差不多了
    Leonard
        16
    Leonard  
       2023-11-01 21:47:16 +08:00
    js 很好学吧
    liuw666
        17
    liuw666  
       2023-11-01 21:48:38 +08:00 via iPhone
    写 ts ,不要写 js 。ts 的语法和 Java 差异不大
    maddot
        18
    maddot  
       2023-11-01 22:04:01 +08:00
    不用学啊,有 Github colipot 就行,100 美金一年而已
    chihiro2014
        19
    chihiro2014  
       2023-11-01 22:34:36 +08:00
    照着现成的项目学习?总不可能从 0 开发吧。
    rogerer
        20
    rogerer  
       2023-11-02 02:52:58 +08:00 via iPhone
    @debuggerx 没错 如果只是后端偶尔用用 JavaScript 完全没必要去了解它背后的构造 可能 typescript 更适合
    zhangxh1023
        21
    zhangxh1023  
       2023-11-02 09:07:21 +08:00
    我一直好奇,红宝书真有人能看得下去吗。。。。
    查询的话也不如 mdn 方便吧。
    建议直接看阮一峰的 es6 入门教程,抛弃老的奇奇怪怪的语法,等真的需要了再去查 mdn
    z1645444
        22
    z1645444  
       2023-11-02 09:24:07 +08:00
    @DaveMo 写原生 JS 的话,可以多说一点具体是要做什么吗,现代 web 开发单纯使用 JS 不加框架做工,好像过于少见了,联想不出使用场景很难给出比较有效的建议😂

    补充一下之前想说没说的,#9 的第二个站点,也是我想推荐的,上手就是 ES6 ,另外也正如 #9 所说,红宝书很像字典,所以你会看起来只是很零散,都没什么联系,导致很多内容用起来很奇怪,只能被迫接受用法,所以学一个新语言一般也是像 #19 说的,找个相似方向的 repo 看看撒情况,带着一知半解开工做个类似的 demo ,推进认知度。个人认为这么做是最有效率便于理解的入门方式。

    JS 推崇 FP ,所以可能带一些基本的 FP 认知去写 JS ,也能帮助你更好地建立对 JS 的认知,这不是必选项,但是这可能是卡住你认知重点关注的函数的前置和后置知识👉
    LoNeZ
        23
    LoNeZ  
       2023-11-02 10:08:42 +08:00
    copilot
    wsssss
        24
    wsssss  
       2023-11-02 10:13:40 +08:00
    Android 被迫转 TS+JS ,不到一个月复制粘贴就很熟练了。现在写几个月了,我可能都不知道具体啥语法。
    这玩意就多写就行了,用到啥学啥,根本没时间让你看书。
    DaveMo
        25
    DaveMo  
    OP
       2023-11-02 11:10:41 +08:00
    @z1645444 算是个比较老的 WEB 项目,之前迭代的人都无了。对于函数作为一等公民这点我是理解的。不过结合书上的一些案例去看这种写法觉得接受不了。
    DaveMo
        26
    DaveMo  
    OP
       2023-11-02 11:13:37 +08:00
    谢谢各位的解答,比心~
    libook
        27
    libook  
       2023-11-02 11:36:18 +08:00
    其实没必要看书,MDN 上的 JS guide 看一遍就差不多了,其他的就是刷原生和 DOM 的 API 文档,看看都有哪些现成的功能。

    JS 核心思想有这么几个:弱类型、异步非阻塞、事件循环,搞明白之后大多数问题就能理解了。

    从 ECMA-262 的各种提案来看,尤其是近 10 年的特性其实是借鉴了超多其他语言的特性,如 Java 、Python 、Ruby ,也就是说如果 JS 不适应的话,学其他语言也可能会一样不适应。
    volvo007
        28
    volvo007  
       2023-11-02 11:44:47 +08:00
    @NessajCN 想想好像还真是,一开始我简直震惊,这整个模块就一个函数没别的了吗,然后函数套函数往下传递……
    asmoker
        29
    asmoker  
       2023-11-02 15:33:19 +08:00
    大差不差,先写起来,需要啥就翻文档
    BeautifulSoap
        30
    BeautifulSoap  
       2023-11-02 19:55:16 +08:00 via Android
    你后端的话别写 js 写 ts 啊,ts 最终不还是编译成原生 js 。
    当然学 ts 必须有 js 的基础,你已经看完相关 js 语法后直接继续学 ts 就行了。
    js 这么多年历史遗留加新的奇奇怪怪的语法一大堆,能给你表演回字的 100 种写法,所以你根本不可能短时间学会大部分用法。所以对后端最好的做法就是用 TS ,然后把 TS 当成你熟悉的静态语言来写,js 那些奇技淫巧一个都不用。然后你会发现一切是这么美好
    CodeCodeStudy
        31
    CodeCodeStudy  
       319 天前
    不要看红宝书,太厚了,而且过时了,推荐阮一峰的教程,在 https://wangdoc.com/
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   982 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 20:20 · PVG 04:20 · LAX 12:20 · JFK 15:20
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.