AngularJS系列之表达式

这节介绍一下AngularJS中表示式的用法。使用表达式可以把数据绑定到HTML中去,使用起来非常方便。不过在使用之前得先引用AngularJS文件,这个文件可以去官网上面去下或者百度都可以找到。

下面就来介绍一下这节的具体内容:

AngularJS 表达式

AngularJS 表达式写在双大括号内:{{ expression }}。

AngularJS 表达式把数据绑定到 HTML。

AngularJS 将在表达式书写的位置"输出"数据。

AngularJS 表达式 很像 JavaScript 表达式:它们可以包含文字、运算符和变量。

现在已经知道表示式的基本用法了,下面写个例子来介绍一下AngularJS表达式具体的用法:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://cdn.static.runoob.com/libs/angular.js/1.4.6/angular.min.js"></script> 
</head>
<body>
<div ng-app="">
<p>我的第一个表达式: {{ 5 + 5 }}</p>
</div>
</body>
</html>

这里先不介绍ng-app是什么东西,有什么作用,只要知道在div上面写上ng-app就表示这个div是可以使用AngularJS中的任何用法的,否则就是无效的。

这里输出的结果和大家猜测的是一样的:也就是10。有人会问为什么输出的不是字符串“5+5”呢?这正是AngularJS表达式的厉害之处,它可以自动识别表达式中的数据类型,然后给出它相应的运算规则。 下面先来介绍一下ng-init的作用:ng-init的作用是给给定的参数赋初始值,然后我们就可以在表达式中用到这些值了。这些值的类型可以是:字符串、数字、对象、数组等等之类的。

下面就结合ng-init和表达式来具体的给一个例子:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://cdn.static.runoob.com/libs/angular.js/1.4.6/angular.min.js"></script> 
</head>
<body>
<div ng-app="" ng-init="quantity=1;cost=5">
<p>总价: {{ quantity * cost }}</p>
</div>
</body>
</html>

这个例子中就是利用了ng-init中的初始值,然后在表达式中运算,最后得到新的的结果展示在HTML中来。到目前为止,大家应该可以理解ng-init和表达式的基本用法了吧。

下面再给出一些不同的例子来加深一下映象:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://cdn.static.runoob.com/libs/angular.js/1.4.6/angular.min.js"></script> 
</head>
<body>
<div ng-app="" ng-init="quantity=1;cost=5">
<p>总价: {{ quantity * cost }}</p>
</div>
</body>
</html>

这个例子是字符串连接的例子,从里面可以明显的看出结果是:John Doe。利用表达式实现字符串连接是不是特别方便。

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://cdn.static.runoob.com/libs/angular.js/1.4.6/angular.min.js"></script> 
</head>
<body>
<div ng-app="" ng-init="firstName='John';lastName='Doe'">
<p>姓名: {{ firstName + " " + lastName }}</p>
</div>
</body>
</html>

这个例子是对象调用的例子,从里面也可以很明显的看出结果是:Doe。

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://cdn.static.runoob.com/libs/angular.js/1.4.6/angular.min.js"></script> 
</head>
<body>
<div ng-app="" ng-init="person={firstName:'John',lastName:'Doe'}">
<p>姓为 {{ person.lastName }}</p>
</div>
</body>
</html>

这个例子是典型的数组使用例子,和js中的数组下标是一样的,所以points【2】的值是:19。

例子现在就讲这些,相信大家已经基本了解了ng-init和表达式{{}}的一些常用的用法吧。

这里有一些主要事项需要大家注意一下,那就是:

AngularJS 表达式 与 JavaScript 表达式

类似于 JavaScript 表达式,AngularJS 表达式可以包含字母,操作符,变量。

与 JavaScript 表达式不同,AngularJS 表达式可以写在 HTML 中。

与 JavaScript 表达式不同,AngularJS 表达式不支持条件判断,循环及异常。

与 JavaScript 表达式不同,AngularJS 表达式支持过滤器。

本文的内容借鉴Angular JS中的官方API和菜鸟教程中的Angular JS教程,大家如果想了解更多的话可以前往。

如对内容有问题或有疑义,请及时提出,不甚感谢。本人QQ:208017534

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏数据结构笔记

JavaScript中 appendChild追加子节点无效的解决办法

这其实是因为一个元素只能有一个父元素,上面这段代码试图将 btn添加到多个元素中。

712
来自专栏Jackson0714

项目中遇到的扩展方法-总结和分享

3127
来自专栏听雨堂

深入理解字符串和字节数组转换

      前文中,论及字符串和字节数组的转换,虽然能够找到某个代码页,保证转换的可逆,但是在实际处理中,仍然还有一些细节问题需要注意.       最重要的...

1658
来自专栏章鱼的慢慢技术路

用Go语言实现一个简单的聊天机器人

Go语言基本构成要素:标识符、关键字、字面量、分隔符、操作符。它们可以组成各种表达式和语句,而后者都无需以分号结尾。

842
来自专栏cs

c++14.0 名字空间和条件编译

这二个东西,经常被我们忽略了,其实很实用。当你深入c++世界的时候,总有一天会遇到他们,先面熟一下吧。 ---- 1.0 名称空间。 ---- 知识点综述: 名...

3227
来自专栏西枫里博客

Python学习笔记五(列表和元组)

最近这段时间是一年中最忙的时候,学习进度严重耽误,距离上一次更新Python的学习进度又已经一个月过去了,“佩服”我自己。趁着假期,继续学习我的Python,顺...

601
来自专栏阿凯的Excel

Read_CSV参数详解

pandas.read_csv参数详解 pandas.read_csv参数整理 读取CSV(逗号分割)文件到DataFrame 也支持文件的部分导入和选择迭代 ...

3016
来自专栏漫漫前端路

从 Vue typings 看 “this”

在 2.5.0 版本中,Vue 大大改进了类型声明系统以更好地使用默认的基于对象的 API。

742
来自专栏技术墨客

React学习(4)——深入说明JSX与props

我们可以将JSX理解为React.createElement(component, props, ...children)方法的语法糖。JSX的代码:

482
来自专栏运维小白

9.6 awk(上)

awk工具 head -n2 test.txt|awk -F ':' '{print $1}' head -n2 test.txt|awk -F ':' '{p...

1677

扫码关注云+社区