Open Swift 和 JavaScript 對比分析
標簽(空格分隔): JavaScript
項目 | JavaScript | Open Swift |
---|---|---|
基本類型 | 字符串 數字 布爾值 數組 對象 undefined null | 字符串 數字 布爾值 JSON 函數 空 |
JSON規則 | 并列數據的集合(數組)用方括號[] 表示 映射關系的集合(對象)用花括號{} 表示 |
并列數據和映射關系的集合都用方括號[] 表示 |
變量定義 | var指定變量生存在當前變量空間 若不指定變量生存在全局變量空間 |
var unique local 必須指定 |
多值賦值 | 不支持 | 支持var (p1, p2, p3) = (-1111, 2, 6666);
|
運算符重載 | 不支持 | 支持 |
for in |
for(index in array) for(key in object)
|
for(var value in JSON) for(var (key, value) in JSON)
|
switch case | 支持 | 不支持 |
多返回值函數 | 不支持 | 支持var(x, y, size) = getPoint();
|
函數返回值 | 7種基本類型和函數 | 6種基本類型 |
函數參數 | 7種基本類型和函數 | 6種基本類型 |
函數的反射 | arguments對象 | FUNCTION_name PARAM PARAM_length |
函數的重載 | 不支持 | 不支持 |
類的顯示定義 | 不支持 | 支持 |
核心類機制 | 原型鏈 | 對象克隆 |
類的繼承 | 原型鏈 | 對象克隆 |
類的實例 | 通過原型鏈創建對象 | 對象克隆 |
類的封裝和訪問控制 | 不支持 | 不支持 |
多態 | 不支持 | 不支持 |
類的反射 | 原型鏈 | CLASS_name CLASS_PARENT_name FIELD_length |