Google Dart编程语法和基本类型学习教程


Posted in Javascript onNovember 27, 2013

1. 变量声明

如何定义变量

var name = 'Bob';

变量的初始值

int lineCount;
assert(lineCount == null); // Variables (even numbers) are initially null.

可以使用var,也可以直接指定类型。
final, 定义为final的变量,值不能够被更改

final name = 'Bob'; // Or: final String name = 'Bob';
name = 'Alice';     // ERROR

2. 基础类型

字符串

字符串可以使用单引号或者双引号。

var s1 = 'Single quotes work well for string literals.';
var s2 = "Double quotes work just as well.";

在字符串中,可以直接应用值, ${表达式}, 如果只是一个变量,就可以去掉{}

var s = 'string interpolation';
assert('Dart has $s, which is very handy.' ==
       'Dart has string interpolation, which is very handy.');
assert('That deserves all caps. ${s.toUpperCase()} is very handy!' ==
       'That deserves all caps. STRING INTERPOLATION is very handy!');

多行字符串,会被认为默认拼接。

var s = 'String ''concatenation'
        " works even over line breaks.";
assert(s == 'String concatenation works even over line breaks.');

如果要使用多行字符串,可以这样, 用'''

var s1 = '''
You can create
multi-line strings like this one.
''';

创建一个不考虑转义的字符串

var s = @"In a raw string, even \n isn't special.";

StringBuffer, 非常类似.net中的。

var sb = new StringBuffer();
sb.add("Use a StringBuffer ");
sb.addAll(["for ", "efficient ", "string ", "creation "]);
sb.add("if you are ").add("building lots of strings.");
var fullString = sb.toString();

数字

主要就2种,int 和 double, 它们都继承num类型

数字和字符串之间的转换

// String -> int
var one = Math.parseInt("1");
assert(one == 1);
// String -> double
var onePointOne = Math.parseDouble("1.1");
assert(onePointOne == 1.1);
// int -> String
var oneAsString = 1.toString();
assert(oneAsString == "1");
// double -> String
var piAsString = 3.14159.toStringAsFixed(2);
assert(piAsString == "3.14");

布尔类型

bool,不同于js, 只要不是true, 那么就都是false.

Lists(可以当做数组)

var list = [1,2,3]; //实例化一个list
list.add(4);       //添加一个元素4

可以使用for, for...in, foreach()来遍历一个list.

var list = [1,2,3];
for (final x in list) {
  print(x);
}

或者

var list = [1,2,3];
list.forEach((element) => print(element));

Maps(字典类型)

var gifts = {                         // A map literal
// Keys       Values
  "first"  : "partridge",
  "second" : "turtledoves",
  "fifth"  : "golden rings"};
gifts["third"] = "apple"; //添加一个

使用foreach遍历

var gifts = {
  "first" : "partridge",
  "second": "turtledoves",
  "fifth" : "golden rings"};
gifts.forEach((k,v) => print('$k : $v'));

getKeys()和getValues()方法

var gifts = {"first": "partridge", "second": "turtledoves"};
var values = gifts.getValues();
//Print partridge and turtledoves, but not necessarily in that order.
values.forEach((v) => print(v));
Javascript 相关文章推荐
JavaScript小技巧 2.5 则
Sep 12 Javascript
浅谈jquery回调函数callback的使用
Jan 30 Javascript
微信小程序 欢迎界面开发的实例详解
Nov 30 Javascript
微信小程序 支付简单实例及注意事项
Jan 06 Javascript
详解Vue中添加过渡效果
Mar 20 Javascript
微信小程序 图片上传实例详解
May 05 Javascript
基于Vue实例对象的数据选项
Aug 09 Javascript
简单了解vue.js数组的常用操作
Jun 17 Javascript
微信小程序修改数组长度的问题的解决
Dec 17 Javascript
vue-cli3使用mock数据的方法分析
Mar 16 Javascript
vue如何批量引入组件、注册和使用详解
May 12 Vue.js
Vue3实现简易音乐播放器组件
Aug 14 Vue.js
jQuery实现可收缩展开的级联菜单实例代码
Nov 27 #Javascript
利用JavaScript实现新闻滚动效果(实例代码)
Nov 27 #Javascript
Javascript实现滚动图片新闻的实例代码
Nov 27 #Javascript
讨论html与javascript在浏览器中的加载顺序问题
Nov 27 #Javascript
js替代copy(示例代码)
Nov 27 #Javascript
jQuery封装的获取Url中的Get参数示例
Nov 26 #Javascript
javascript的parseFloat()方法精度问题探讨
Nov 26 #Javascript
You might like
php计算指定目录下文件占用空间的方法
2015/03/13 PHP
PHP结合jQuery.autocomplete插件实现输入自动完成提示的功能
2015/04/27 PHP
Symfony2针对输入时间进行查询的方法分析
2017/06/28 PHP
javascript 读取XML数据,在页面中展现、编辑、保存的实现
2009/10/27 Javascript
jquery 应用代码 方便的排序功能
2010/02/06 Javascript
JS声明变量背后的编译原理剖析
2012/12/28 Javascript
js的.innerHTML = ""IE9下显示有错误的解决方法
2013/09/16 Javascript
JS使用replace()方法和正则表达式进行字符串的搜索与替换实例
2014/04/10 Javascript
javascript引用赋值(地址传值)用法实例
2015/01/13 Javascript
Javascript编写2048小游戏
2015/07/07 Javascript
JavaScript统计网站访问次数的实现代码
2015/11/18 Javascript
javascript中Date对象应用之简易日历实现
2016/07/12 Javascript
javascript使用闭包模拟对象的私有属性和方法
2016/10/05 Javascript
JavaScript仿聊天室聊天记录
2016/12/27 Javascript
js实现3D图片展示效果
2017/03/09 Javascript
使用jquery的cookie实现登录页记住用户名和密码的方法
2019/03/13 jQuery
jquery实现吸顶导航效果
2020/01/08 jQuery
ES2020系列之空值合并运算符 '??'
2020/07/22 Javascript
Python ORM框架SQLAlchemy学习笔记之数据查询实例
2014/06/10 Python
巧用python和libnmapd,提取Nmap扫描结果
2016/08/23 Python
Python 常用的安装Module方式汇总
2017/05/06 Python
运行django项目指定IP和端口的方法
2018/05/14 Python
Python实现打砖块小游戏代码实例
2019/05/18 Python
Python 函数list&read&seek详解
2019/08/28 Python
python实现坦克大战
2020/04/24 Python
北欧最好的童装网上商店:Babyshop
2019/09/15 全球购物
财务会计应届生求职信
2013/11/24 职场文书
自我鉴定写作要点
2014/01/17 职场文书
小学班主任寄语大全
2014/04/04 职场文书
销售类求职信
2014/06/13 职场文书
学生检讨书怎么写?
2014/10/10 职场文书
2014年双拥工作总结
2014/11/21 职场文书
2014年库房工作总结
2014/11/26 职场文书
捐款仪式主持词
2015/07/04 职场文书
redis击穿 雪崩 穿透超详细解决方案梳理
2022/03/17 Redis
Win11电脑显示本地时间与服务器时间不一致怎么解决?
2022/04/05 数码科技