码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 一段惊呆下巴的 JavaScript 代码


    3388e61d78aedfc11f90f28ed065d18b.gif

    【CSDN 编者按】这篇文章通过一个有趣的 JavaScript 问题,揭示了该 JavaScript 的复杂性和问题的巧妙之处。

    原文链接:https://dev.to/arjuncodess/javascript-is-extraordinarily-weird-hear-me-out-56j5

    未经允许,禁止转载!

    作者 | Arjun Vijay Prakash       译者 | 明明如月

    责编 | 夏萌

    出品 | CSDN(ID:CSDNnews)

    昨晚,我遇到了一个颇为有趣的 JavaScript 问题。我敢保证,除非你提前看答案,否则很难回答出来。

    df4c089110a316fb9593de18aaea039e.png

    请问这段代码的输出结果是什么?

    ("b" + "a" + + "a" + "a").toLowerCase()

    可选择的答案如下:

    • baaa

    • ba01100001a

    • baa

    • ba1a

    这个问题表面看起来不难,但当我公布答案后,可能让你惊掉下巴。

    所有上述选项都是错的!请问,你选对了吗?

    e13a35c183fa580f6d581eb20d6685b2.gif

    答案将在5秒后公布。

    5.

    4.

    3.

    2.

    1.

    答案是 "banana"

    JavaScript 真是匪夷所思 🤐🔥

    你可能诧异不已、质问我 “你疯了吗?”,怎么可能会是这个结果?请你先冷静冷静,让我为你分析分析。

    630ef1759ffabaebafd4e66e2d303748.png

    解析工作原理

    下面,让我们分步解释代码的运作原理:

    • "b" + "a" 连接字符串,得到 "ba"。

    • + + "a" 试图将字符串 "a" 转换为数字,由于 "a" 非有效数字,所以结果为 NaN("非数字")。

    • "ba" + NaN 将字符串 "ba" 与值 NaN 连接,得到 "baNaN"。

    • "baNaN" + "a" 将 "baNaN" 与 "a" 连接,得到 "baNaNa"。

    • 最后,调用 .toLowerCase() 方法,将字符串 "baNaNa" 所有字符转换为小写,得到 "banana"。

    所以,代码的最终输出就是 "banana"。

    你答对了吗?在学习和工作编码过程中是否也遇到过类似的奇怪问题?欢迎在评论区留言分享。

    推荐阅读:

    ▶中国程序员拒写赌博程序被拔14颗牙;iPhone 15系列USB-C数据线曝光;Flutter 3.13发布|极客头条

    ▶前华为天才少年稚晖君创业6个月造出人形机器人,百亿参数大模型加持、目标成本20万元以内

    ▶系统时间随机跳到 55 天后,程序出 Bug,开发者:这是 Windows 系统功能搞得鬼!

    141630278d5486f619f8b46bf01f2c39.jpeg

  • 相关阅读:
    【AI必备利器】GPU白嫖指南
    点云从入门到精通技术详解100篇-基于点云语义分割的电力线提取及聚类研究
    flutter 绘制原理探究
    华为OD机试真题-简易内存池-2024年OD统一考试(C卷D卷)
    面向Web开发人员的Linux实用入门
    小程序包大小优化(uni-app)
    D-star Lite算法及相关思考
    【echarts 】设置datazoom 允许使用鼠标滚轮滚动图表
    AI绘图:Controlnet在ComfyUI中的使用教程:提升Stable Diffusion可控性
    openGauss概述
  • 原文地址:https://blog.csdn.net/csdnnews/article/details/132419304
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号