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 用记忆函数快速计算递归函数
Mar 15 Javascript
基于jquery实现的鼠标滑过按钮改变背景图片
Jul 15 Javascript
jQuery $.extend()用法总结
Jun 15 Javascript
jQuery新的事件绑定机制on()示例应用
Jul 18 Javascript
JavaScript字符串对象toUpperCase方法入门实例(用于把字母转换为大写)
Oct 17 Javascript
angularjs学习笔记之三大模块(modal,controller,view)
Sep 26 Javascript
JavaScript中的跨浏览器事件操作的基本方法整理
May 20 Javascript
footer定位页面底部(代码分享)
Mar 07 Javascript
解决vue中post方式提交数据后台无法接收的问题
Aug 11 Javascript
Vue 样式绑定的实现方法
Jan 15 Javascript
vue-cli配置全局sass、less变量的方法
Jun 06 Javascript
es6函数之严格模式用法实例分析
Mar 17 Javascript
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实现分页的一个示例
2006/10/09 PHP
php 输出双引号"与单引号'的方法
2010/05/09 PHP
PHP提取字符串中的图片地址[正则表达式]
2011/11/12 PHP
PHP提交表单失败后如何保留已经填写的信息
2014/06/20 PHP
PHP中的命名空间相关概念浅析
2015/01/22 PHP
PHP、Java des加密解密实例
2015/04/27 PHP
TP框架实现上传一张图片和批量上传图片的方法分析
2020/04/23 PHP
Laravel如何实现适合Api的异常处理响应格式
2020/06/14 PHP
Ext对基本类型的扩展 ext,extjs,format
2010/12/25 Javascript
Json2Template.js 基于jquery的插件 绑定JavaScript对象到Html模板中
2011/10/29 Javascript
JavaScript中按位“异或”运算符使用介绍
2014/03/14 Javascript
jQuery实现级联菜单效果(仿淘宝首页菜单动画)
2014/04/10 Javascript
Javascript玩转继承(三)
2014/05/08 Javascript
Bootstrap导航栏各元素操作方法(表单、按钮、文本)
2015/12/28 Javascript
第三章之Bootstrap 表格与按钮功能
2016/04/25 Javascript
JS弹出窗口插件zDialog简单用法示例
2016/06/12 Javascript
基于Vue2的移动端开发环境搭建详解
2016/11/03 Javascript
JS正则匹配URL网址的方法(可匹配www,http开头的一切网址)
2017/01/06 Javascript
微信小程序 欢迎页面的制作(源码下载)
2017/01/09 Javascript
详解js的视频和音频采集
2018/08/09 Javascript
微信小程序实现左滑修改、删除功能
2020/10/19 Javascript
js实现倒计时器自定义时间和暂停
2019/02/25 Javascript
js刷新页面location.reload()用法详解
2019/12/09 Javascript
浅谈vuex为什么不建议在action中修改state
2020/02/02 Javascript
Vue+Element自定义纵向表格表头教程
2020/10/26 Javascript
[42:32]完美世界DOTA2联赛循环赛 Magma vs PXG BO2第二场 10.28
2020/10/28 DOTA
python脚本监控docker容器
2016/04/27 Python
Python3下错误AttributeError: ‘dict’ object has no attribute’iteritems‘的分析与解决
2017/07/06 Python
Python+pandas计算数据相关系数的实例
2018/07/03 Python
python实现支付宝转账接口
2019/05/07 Python
计算机通信专业推荐信
2014/02/22 职场文书
工艺工程师岗位职责
2014/03/04 职场文书
大学活动总结格式
2014/04/29 职场文书
个人学习总结范文
2015/02/15 职场文书
欠款纠纷起诉状
2015/05/19 职场文书
Python OpenCV超详细讲解读取图像视频和网络摄像头
2022/04/02 Python