JavaScript 是 "dynamic" 是什么意思?
What does it mean that JavaScript is "dynamic"?
我从不同的来源(例如 wiki、文章等)了解到编程意义上的动态意味着什么。 Wikipedia 讨论了动态编程语言如何在运行时执行某些编程行为(与静态语言的编译时相反),但他们的解释含糊不清,并讨论了这些行为在难度、复杂性和性能成本方面的差异适用于所有编程语言。
那么对于 Java脚本而言,具体来说,它是动态的是什么意思?
我在这一点上可能完全错了,但我也理解 JavaScript 是一种动态类型的语言,因为在实例化 variable/function(例如 var、函数jsFunction()) 而不是像 Java 这样的静态类型语言,您在实例化 variable/function 之前定义类型(例如 int var,public int function()).
这与这些有关系吗?
大多数语言都具有动态行为的某些方面。即使是静态类型的语言也可以具有动态或可变数据类型,其中可以包含不同的数据类型。
JavaScript 之所以称为动态语言,是因为它不仅具有一些动态方面,几乎所有内容都是动态的。
所有变量都是动态的(类型和存在),甚至代码也是动态的。您可以在运行时创建新变量,变量的类型在运行时确定。您可以随时创建新功能,或替换现有功能。在浏览器中使用时,加载更多脚本文件时添加代码,您可以随时加载更多文件。
现在JavaScript很多实现都是编译,后台生成静态代码和静态类型。但是,行为仍然是动态的,编译器仅在发现动态方面未用于特定对象时才生成静态类型。
JS 是动态的最有意义的定义明确的方式是它是动态类型的:语言有数据类型,但不会检查程序的类型是 "okay" 直到程序实际上是 运行宁。相反的是静态类型,这意味着程序的类型在 运行 之前由检查其源代码的程序验证。 (例如,Java 和 ML 是静态类型的。)
我从不同的来源(例如 wiki、文章等)了解到编程意义上的动态意味着什么。 Wikipedia 讨论了动态编程语言如何在运行时执行某些编程行为(与静态语言的编译时相反),但他们的解释含糊不清,并讨论了这些行为在难度、复杂性和性能成本方面的差异适用于所有编程语言。
那么对于 Java脚本而言,具体来说,它是动态的是什么意思?
我在这一点上可能完全错了,但我也理解 JavaScript 是一种动态类型的语言,因为在实例化 variable/function(例如 var、函数jsFunction()) 而不是像 Java 这样的静态类型语言,您在实例化 variable/function 之前定义类型(例如 int var,public int function()).
这与这些有关系吗?
大多数语言都具有动态行为的某些方面。即使是静态类型的语言也可以具有动态或可变数据类型,其中可以包含不同的数据类型。
JavaScript 之所以称为动态语言,是因为它不仅具有一些动态方面,几乎所有内容都是动态的。
所有变量都是动态的(类型和存在),甚至代码也是动态的。您可以在运行时创建新变量,变量的类型在运行时确定。您可以随时创建新功能,或替换现有功能。在浏览器中使用时,加载更多脚本文件时添加代码,您可以随时加载更多文件。
现在JavaScript很多实现都是编译,后台生成静态代码和静态类型。但是,行为仍然是动态的,编译器仅在发现动态方面未用于特定对象时才生成静态类型。
JS 是动态的最有意义的定义明确的方式是它是动态类型的:语言有数据类型,但不会检查程序的类型是 "okay" 直到程序实际上是 运行宁。相反的是静态类型,这意味着程序的类型在 运行 之前由检查其源代码的程序验证。 (例如,Java 和 ML 是静态类型的。)