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。