JavaScript与Swift的异同,python像vb6

其实很多主流的编程语言都是大同小异,魔改了一下罢了。

JavaScript与Swift一样,是动态语言类型,即不用指定变量类型,会根据赋值的内容动态的判断出它的类型。与Swift不同的是,JavaScript定义变量的时候,也不需要指定变量类型或者必须得赋初始值。JavaScript可以在赋值的时候重新定义变量的类型。而Swift一旦确定了变量的类型,是不能再修改的。

与swift不同的是,在JavaScript中是采用this来引用自身的属性方法等,而不像iOS开发,是调用self来调用。但是用法和用意是一样的。

在JavaScript中,声明变量类型,是使用new来声明的。比如new String、new Number、new Boolean等。

JavaScript的数字类型只有Number类型,该类型包含所有的其他语言的基础数值类型(int、float、double等)。

JavaScript数组的创建形式:javascript的方式方式有两种:1、使用new Array() 2、和swift一样,直接赋值。如:1: var cars = new Array();。2:var cars = "a","b","c";。

JavaScript的对象,即key-value类型,即iOS所说的字典类型。JavaScript的定义方式和Swift的方式是一样的,如:var person={firstname:"John", lastname:"Doe", id:5566};但是与swift不同的是,JavaScript的对象的对象可以是函数类型,及value为某个函数类型。如:var person = { firstName: "John", lastName : "Doe",id : 5566,fullName : function() { return this.firstName + " " + this.lastName;}};换句话说,在JavaScript中,对象即是类,与swift有异曲同工之妙。

在JavaScript中,Undefined 这个值表示变量不含有值。即定义了变量没有赋值,该变量为Undefined。null 和 undefined 的值相等,但类型不等,(1)undefined:是所有没有赋值变量的默认值,自动赋值。(2)null:主动释放一个变量引用的对象,表示一个变量不再指向任何对象地址。

JavaScript可以通过将变量的值设置为 null 来清空变量。而swift中是使用nil,但是,Swift一旦指定了明确的类型,是不能够将变量的值设置为 null 来清空变量的。

JavaScript 函数和swift函数是一样的使用方式。只是声明方式不一样。

JavaScript的运算符与swift是一样的。比较符有些不同,JavaScript中多了绝对等号。即"==="表示值和类型都完全相同,也就有不绝对等号"!==",表示不绝对等于(值和类型有一个不相等,或两个都不相等)

typeof 操作符,可以用来检测变量的数据类型。

constructor 属性返回所有 JavaScript 变量的构造函数。可以使用 constructor 属性来查看对象是否为数组 (包含字符串 "Array"):function isArray(myArray) { return myArray.constructor.toString().indexOf("Array") > -1;} 。可以使用 constructor 属性来查看对象是否为日期 (包含字符串 "Date"):function isDate(myDate) {return myDate.constructor.toString().indexOf("Date") > -1;}

JavaScript的变量,可以先使用,后声明。因为JavaScript会把声明的而未进行赋值的变量自动的提升到方法的最顶部。

在JavaScript中,定义常量是使用const关键字,这个swift有很大的差别。swift是用let关键字来定义常量。而JavaScript的let关键字是用来定义局部变量的,即le声明的变量只能在该代码块中有效。

在 JavaScript 中, 全局作用域是针对 JavaScript 环境。 在 HTML 中, 全局作用域是针对 window 对象。使用 var 关键字声明的全局作用域变量属于 window 对象,即是全局作用域,使用 let 关键字声明的全局作用域变量不属于 window 对象,即是局部作用域。

JavaScript的闭包,和swift的闭包是不一样的,JavaScript的闭包,是一种自我调用函数的方式,此时,最外层的函数中的变量会只调用一次。如:var add = (function () { var counter = 0;return function () {return counter += 1;}})();add();add();add();获得的结果:计数器为 3

相关推荐
Chester_19999 小时前
CSP202203C.计算资源调度器
开发语言·数据结构·c++·蓝桥杯
DeepVisionary10 小时前
谷歌 Gemini Omni 1.1 Flash 正式发布:4K 视频、40 秒场景延伸,视频生成进入按 token 计费时代
python·自动化
阡之尘埃10 小时前
Python数据分析案例85——大模型微调全流程(SFT的LoRA微调)
人工智能·python·深度学习·语言模型·llm·微调·千问
海兰10 小时前
【应用】基于 Next.js 16 + Python mplfinance的金融K线图与技术指标可视化平台(三)
javascript·python·金融
EXI-小洲11 小时前
Java 操作 Word:字符串替换、图片插入、动态生成表格与API接口下载
java·开发语言·spring boot·word
cvcode_study11 小时前
Ollama+ComfyUI 多模态
大数据·人工智能·python
会周易的程序员11 小时前
给 PLC 写一个字节码虚拟机:STVM 虚拟机架构设计
开发语言·c++·虚拟机·软plc·iec61131·stvm
机器视觉知识推荐、就业指导11 小时前
为什么老说“纯 Qt 没啥就业市场”?
开发语言·qt
telepan11 小时前
Qt 开发避坑与性能指南:如何优雅、安全地定义全局常量字符串?
开发语言·qt
m0_6952514911 小时前
Qt MaintenanceTool 使用国内镜像加速下载(超详细教程)
开发语言·qt