后端因为工作需要被迫需要写 js,有什么快速适应语法的方式啊 - V2EX
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 3743 次点击
    这是一个创建于 776 天前的主题,其中的信息可能已经有所发展或是发生改变。
    基本语法跟着红宝书过了一遍,感觉书的内容真的很零散。重点关注了 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
    无他,惟手熟尔。找个培训班的项目跟着学
    KMpAn8Obw1QhPoEP
        5
    KMpAn8Obw1QhPoEP  
       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 或多或少应该都接触一些吧?
    itechify
        11
    itechify  
    PRO
       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 很好学吧
    nowtg
        17
    nowtg  
       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  
       2024-01-16 15:57:29 +08:00
    不要看红宝书,太厚了,而且过时了,推荐阮一峰的教程,在 https://wangdoc.com/
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5597 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 28ms UTC 02:32 PVG 10:32 LAX 18:32 JFK 21:32
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86