AngularJS 表达式
AngularJS 使用 表达式 将数据绑定到 HTML。
AngularJS 表达式
AngularJS 表达式可以写在双括号内:{{ expression }}
。
AngularJS 表达式也可以写在指令中:ng-bind="expression"
。
AngularJS 将解析表达式,并返回结果。
AngularJS 表达式与 JavaScript 表达式非常相似:它们可以包含文字、运算符和变量。例如 {5+5} 或 {firstName + " " + lastName}
实例
<!DOCTYPE html>
<html>
<script src="https://cdn.bootcdn.net/ajax/libs/angular.js/1.8.2/angular.min.js"></script>
<body>
<div ng-app="">
<p>我的第一个表达式: {{ 5 + 5 }}</p>
</div>
</body>
</html>
如果删除 ng-app 指令,HTML 将按原样显示表达式,而不进行解析:
实例
<!DOCTYPE html>
<html>
<script src="https://cdn.bootcdn.net/ajax/libs/angular.js/1.8.2/angular.min.js"></script>
<body>
<p>如果没有 ng-app 指令,HTML将按原样显示表达式,而不进行解析。</p>
<div>
<p>我的第一个表达式: {{ 5 + 5 }}</p>
</div>
</body>
</html>
你可以随心所欲地编写表达式,AngularJS 只需解析表达式并返回结果。
示例:让 AngularJS 更改 CSS 属性的值。
通过更改下面输入框的值来更改其颜色:
实例
<!DOCTYPE html>
<html>
<script src="https://cdn.bootcdn.net/ajax/libs/angular.js/1.8.2/angular.min.js"></script>
<body>
<p>修改输入框的值:</p>
<div ng-app="" ng-init="myCol='lightblue'">
<input style="background-color:{{myCol}}" ng-model="myCol">
</div>
<p>AngularJS 解析表达式并返回结果。</p>
<p>输入框的背景色将是您在输入字段中写入的任何颜色。</p>
</body>
</html>
AngularJS 数字
AngularJS 数字与 JavaScript 数字相似:
<!DOCTYPE html>
<html>
<script src="https://cdn.bootcdn.net/ajax/libs/angular.js/1.8.2/angular.min.js"></script>
<body>
<div ng-app="" ng-init="quantity=1;cost=5">
<p>美元总计: {{ quantity * cost }}</p>
</div>
</body>
</html>
同样的例子使用 ng-bind
:
<!DOCTYPE html>
<html>
<script src="https://cdn.bootcdn.net/ajax/libs/angular.js/1.8.2/angular.min.js"></script>
<body>
<div ng-app="" ng-init="quantity=1;cost=5">
<p>美元总计: <span ng-bind="quantity * cost"></span></p>
</div>
</body>
</html>
使用 ng-init
并不常见。在关于控制器的章节中,您将学习一种更好的初始化数据的方法。
AngularJS 字符串
AngularJS 字符串类似于 JavaScript 字符串:
实例
<!DOCTYPE html>
<html>
<script src="https://cdn.bootcdn.net/ajax/libs/angular.js/1.8.2/angular.min.js"></script>
<body>
<div ng-app="" ng-init="firstName='John';lastName='Doe'">
<p>完整名称是: {{ firstName + " " + lastName }}</p>
</div>
</body>
</html>
同样的例子使用 ng-bind
:
实例
<!DOCTYPE html>
<html>
<script src="https://cdn.bootcdn.net/ajax/libs/angular.js/1.8.2/angular.min.js"></script>
<body>
<div ng-app="" ng-init="firstName='John';lastName='Doe'">
<p>完整名称是: <span ng-bind="firstName + ' ' + lastName"></span></p>
</div>
</body>
</html>
AngularJS 对象
AngularJS 对象与 JavaScript 对象相似:
实例
<!DOCTYPE html>
<html>
<script src="https://cdn.bootcdn.net/ajax/libs/angular.js/1.8.2/angular.min.js"></script>
<body>
<div ng-app="" ng-init="person={firstName:'John',lastName:'Doe'}">
<p>名称是 {{ person.lastName }}</p>
</div>
</body>
</html>
同样的例子使用 ng-bind
:
实例
<!DOCTYPE html>
<html>
<script src="https://cdn.bootcdn.net/ajax/libs/angular.js/1.8.2/angular.min.js"></script>
<body>
<div ng-app="" ng-init="person={firstName:'John',lastName:'Doe'}">
<p>名称是 <span ng-bind="person.lastName"></span></p>
</div>
</body>
</html>
AngularJS 数组
AngularJS 数组类似于 JavaScript 数组:
实例
<!DOCTYPE html>
<html>
<script src="https://cdn.bootcdn.net/ajax/libs/angular.js/1.8.2/angular.min.js"></script>
<body>
<div ng-app="" ng-init="points=[1,15,19,2,40]">
<p>第三个结果是 {{ points[2] }}</p>
</div>
</body>
</html>
同样的例子使用 ng-bind
:
实例
<!DOCTYPE html>
<html>
<script src="https://cdn.bootcdn.net/ajax/libs/angular.js/1.8.2/angular.min.js"></script>
<body>
<div ng-app="" ng-init="points=[1,15,19,2,40]">
<p>第三个结果是 <span ng-bind="points[2]"></span></p>
</div>
</body>
</html>
AngularJS 表达式 vs. JavaScript 表达式
与 JavaScript 表达式一样,AngularJS 表达式可以包含文字、运算符和变量。与 JavaScript 表达式不同,AngularJS 表达式可以在 HTML 中编写。
AngularJS 表达式不支持条件、循环和异常,而 JavaScript 表达式支持。
AngularJS 表达式支持过滤器,而 JavaScript 表达式不支持过滤器。在本站的 JavaScript 教程中了解 JavaScript。