美文网首页rtzl
【Dart语言】从零开始学习

【Dart语言】从零开始学习

作者: zbcy0012 | 来源:发表于2021-01-25 16:42 被阅读0次

    〇、零碎的基础知识

    • Dart 有固定的入口函数
    // 从这里开始执行
    void main(){
      ...
    }
    
    • 一切空值皆为 null

    一、语法 (主要与 JavaScript 对比)

    • 括号里面写对象参数时不需要大括号围住,直接写
    hell(param1:'string',param2:"string2",...);
    
    • 大括号里面的每条完整执行语句尾部都必须得有 ; 跟着。但是作为对象的键值对允许最后一项有多余的逗号,
    • 参数不是想传就传的,得先声明我需要参数,你才能给我传,不声明就传参和声明后不传参都是禁忌。

    二、新语法

    • ??运算符的意思是当一个东西没有值时,将??后面的值赋给那个东西。属于默认值赋值操作。(暂时不可用)
    • ?.运算符的意思是进行了一次判空操作,只有当 optionalThing 不为空时才会调用 isEnabled。optionalThing 为空时返回 null

    示例:

    // 当 optionalThing 不为空时调用参数 isEnabled,为空则返回 false
    optionalThing?.isEnabled??false
    
    // 这种写法是不合法的
    optionalThing?.isEnabled == false
    // Dart 语言中 null 不可与 true/false 划等号
    
    • ...? 属于是 ... 的一个扩展。
    // 这句话的意思就是先判断 arr 是否为空,如果为空则不进行扩展
    
    const arr = [4,5,6];
    const arr2 = [1,2,3,...?arr];
    
    • ..级联操作符使用实例:
    getObj()
      ..text = "确定"
      ..class.add("button")
      ..onClick.listen((e)=>{...})
    

    等价于

    var button = getObj();
    button.text="确定";
    button.class.add("button");
    button.onClick.listen((e)=>{...});
    

    相关文章

      网友评论

        本文标题:【Dart语言】从零开始学习

        本文链接:https://www.haomeiwen.com/subject/nhxwoktx.html