首先,JavaScript本身就是一个借鉴了很多其它语言的杂糅体,JavaScript的创始人Brendan Eich曾戏称”它是C语言和Self语言一夜情的产物。“。其次,随着现代编程语言的发展,趋同肯定是一个趋势,毕竟“完善的语言总是相似的,不完善的语言各有各的不完善。”

但是,应该说JavaScript与Python在实现机制上有本质的不同,譬如前者是借鉴Self语言基于原型(Prototype)的,而后者是基于类(Class)的。我想题主之所以觉得JavaScript正在变得越来越像Python,主要是感觉两者都提供了许多相似的“语法糖”,比如:

(1)(JavaScript中的...运算符) 与 (Python中的*和**运算符)

(2)(JavaScript中的Set和Map数据类型)与 (Python中的Set和Dictionary数据类型)

(3)JavaScript与Python的原生语法对迭代器和生成器的支持

(4)(JavaScript中的Proxy和Reflection) 与 (Python中通过__xxx__重写运算符)

等等诸如此类,特别是ES2015之后新增的一些语法特性,确实让人感觉很多都借鉴自Python。但也可以说,一门成熟的、完善的脚本语言最终都会提供这些语言特性,不一定是谁学谁,而可能是在开发需求和开发理念的推动下自发的趋同,就像鸟类和蝙蝠各自进化出了翅膀——这在生物学上叫做趋同进化。

再来说既然“完善的语言总是相似的“,那为什么不统一成同一种语言的问题。我觉得这跟语言生态有很大关系,一些语言在发展的过程中在某一领域积累了大量的第三方库和问题解决方案,渐渐出现马太效应,使得在解决该领域的问题时有的语言只需要引入库函数,有的语言则要连篇累牍地写很长的代码。荒漠不是不可以变成绿洲,只是一件事的可行性不仅要考虑自然规律的可行性还要考虑经济成本的可行性。以前端为例,如果在前端使用Python,那很多前端库要再写一遍、很多博客要再写一遍。去MDN看看JavaScript提供的前端API的数量、去CSDN看看相关博客的数量,就知道其工程之浩繁。虽然现在推出了WebAssembly,使得其它语言也可以在浏览器上运行,但是依然要调用JavaScript的API。

自然演化出来的多元,看似混乱,却往往好于人类构想出来的统一。

javascript和python的关系_JavaScript是否越来越像Python?相关推荐

  1. mysql和python的关系_八MySQL与Python

    <1>数据库介绍 什么是数据库? 数据库(Database)是按照数据结构来组织.存储和管理数据的仓库, 每个数据库都有一个或多个不同的API用于创建,访问,管理,搜索和复制所保存的数据. ...

  2. python人物关系抽取小说_用python分析小说人物关系(一)——理论篇

    1.工具介绍 jieba jieba分词,最好用的开源中文分词工具.他最主要的两个功能是分词和关键词的抽取.在这里,我们需要用他的分词功能来提取文本中的人名. gephi gephi是一个开源的复杂网 ...

  3. python超级关系_不可阻挡的超级语言--python

    很多人都听说过一句话:人生苦短,我学python.这句话的来源是什么?为什么要学习python? 树哥今天来聊聊python这个话题. 什么是python? python是一们计算机编程语言,也就是一 ...

  4. js 系统教程-01-JavaScript 的历史,JavaScript 与 Java 的关系,JavaScript 与 ECMAScript 的关系,JavaScript的版本

    目录 目录 JavaScript 语言的历史 诞生 JavaScript 与 Java 的关系 JavaScript 与 ECMAScript 的关系 JavaScript的版本 原文地址 目录导航 ...

  5. 【python教程入门学习】利用Python绘制关系网络图

    我们在做数据可视化时,要展现多个元素之间的相互关系时(比如人物关系图),常会用到网络图. 今天我们就分享一个在 Python 里绘制网络图的库:NetworkX,并显示它的基本操作. 一.Networ ...

  6. JavaScript学习笔记(2)——JavaScript和DOM的关系

    文档对象模型(Document Object Model,简称DOM),是W3C组织推荐的处理可扩展标志语言的标准编程接口.DOM实际上是以面向对象方式描述的文档模型.DOM定义了表示和修改文档所需的 ...

  7. python语言用什么来表明每行代码的层次关系_《计算机二级Python语言程序设计考试》第2章: Python语言基本语法元素...

    注明:本系列课程专为全国计算机等级考试二级 Python 语言程序设计考试服务 目录 考纲考点 程序的基本语法元素:程序的格式框架.缩进.注释.变量.命名.保留字.数据类型.赋值语句.引用 基本输入输 ...

  8. matlab multithreading spyder,spyder和python的关系是什么

    版权所有:http://wWw.pxcodeS.comspyder和python的关系:1.Spyder是Python的一个简单的集成开发环境:2.它和其他的Python开发环境相比**大的优点就是模 ...

  9. python工资这么高为什么不学-为什么Python岗位薪资越来越高

    原标题:为什么Python岗位薪资越来越高 不可否认,互联网行业的快速发展催生了大批就业岗位,其中以技术类为首,纵观这几年云计算,大数据,人工智能成为人们讨论的热门话题,其中以人工智能为主,多家互联网 ...

最新文章

  1. excel 按数据拆分 xlam_Excel按类别名称自定义排序:玩转Excel数据
  2. Windows Phone 7 MVVM模式通讯方式之实现Command
  3. AtCoder AGC030F Permutation and Minimum (DP、计数)
  4. 人月神话阅读笔记01
  5. Oracle表空间的创建
  6. Mysql初级第二天(wangyun)
  7. Java学习——基本数据类型
  8. 全景视频拼接(一)--关键技术流程
  9. [unity3d]插件2d toolskit
  10. 基于wke封装的duilib的webkit浏览器控件,可以c++与js互交,源码及demo下载地址
  11. Hive 安装配置及下载地址
  12. 小程序分销商城源码系统+搭建教程+前后端完整版
  13. c语言编程十进制转八进制算法,C语言十进制如何转八进制?
  14. NLP-文本摘要:Rouge评测方法【Rouge-1、Rouge-2、Rouge-L、Rouge-W、Rouge-S】
  15. bootstrapTreeTable 树性插件不能够自动展开的问题
  16. 仙侣情缘之麒麟劫java_《仙侣情缘之麒麟劫》最终支线攻略
  17. Java实现给图片局部打马赛克(前提是知道坐标的情况下)
  18. 车载以太网解决方案 助力智能网联汽车开发
  19. 20170908一些随笔感悟
  20. windows7 旗舰版下载地址

热门文章

  1. ASP.net 省市级联(用户控件)适用用framework3.5以上版本
  2. [JS] - onmusewheel事件(兼容IE,FF)
  3. petshop学习笔记(4)
  4. 五大软件设计原则学习笔记5——依赖倒置原则
  5. 数据结构—链表-单链表应用-删除元素最大的节点
  6. vscode 不展示文档注释内容_文本框这样用,实现文档不同板块内容高效联动,你还不知道吧...
  7. 一文详解MySQL中的事件调度器EVENT
  8. 教你用Java7的Fork/Join框架开发高并发程序
  9. 想了解任务型对话机器人,我们先从自然语言理解聊起
  10. Mock服务设计与实现:MySQL驱动字节码修改增强