angularjs:不能显示 JS 'typeof' 的返回值
angularjs: can't show the returned value of JS `typeof`
我有一个简单的代码的plnkr,它试图在html页面中显示typeof("a")
的值。我总是得到什么都没有显示,而我期待"字符串"。其他数据类型也是如此。这是我的 plnkr:https://plnkr.co/edit/mUASA8s9TgplwysMhXvG?p=preview
我错过了什么吗?我会注意到,我的最终目标是将ng-if
与基于变量类型的条件一起使用。
角度版本:1.4.8
您不能在TEmplate中直接访问typeof。 其他方法使用这个:
在控制器中
app.controller('MainCtrl', function($scope) {
$scope.name = 'World';
$scope.typeOfFun = function(name){
return typeof name;
}
});
在坦普尔特
<div>{{typeOfFun("a")}}</div>
您的代码有几个问题:
- typeof的语法是
typeof a
的,而不是typeof(a)
-
typeof
不是 Angular 表达式绑定的合法表达式,因此不会打印到模板中。
考虑到上述两点,您应该将检查移动到外部函数并使用正确的语法 - 一切都:)
请参阅更正后的代码:
var app = angular.module('plunker', []);
app.controller('MainCtrl', function($scope) {
$scope.name = 'World';
$scope.getTypeOfA = function() {
return typeof "a"
}
});
<!DOCTYPE html>
<html ng-app="plunker">
<head>
<meta charset="utf-8" />
<title>AngularJS Plunker</title>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.8/angular.min.js" type="text/javascript"></script>
<script>document.write('<base href="' + document.location + '" />');</script>
<link rel="stylesheet" href="style.css" />
<script src="app.js"></script>
</head>
<body ng-controller="MainCtrl">
<p>Hello {{name}}!</p>
<div>{{"aaa"}}</div>
<div>{{getTypeOfA()}}</div>
</body>
</html>
显然,您希望将变量传递给"checkTypeOf"函数并返回结果,而不是像我那样这样做。这仅用于演示目的!!!
相关文章:
- Javascript返回值只在循环中返回一次
- XMLHttpRequest未返回值-状态202
- 根据是否解析了 Promise 从函数返回值
- Angular,函数在(模型)工厂中返回值
- AngularJS错误:提供程序必须从$get工厂方法返回值
- 如何从客户端的数组中获取用户输入和返回值
- Javascript中带有返回值的嵌套函数
- 为变量分配多个nodejs导出返回值时出现问题
- 通过回调从onreadystatechange返回值
- 从Ajax函数返回值
- JavaScript生成器中收益率返回值的解析
- HTML如何根据javascript函数的返回值限制文本输入
- 返回值+new Date()与Date.now()是否不同
- 使用在函数外部声明的变量的 Javascript 返回值 + undefined
- 如何在Android中将Javascript返回值转换为String
- chrome.storage.sync.get未返回值-Angular服务
- 修复AngularJS错误:提供程序必须从$get工厂方法返回值
- 为什么要使用与 typeof 的返回值进行严格比较
- angularjs:不能显示 JS 'typeof' 的返回值
- 编辑:为什么typeof(0)返回布尔值而不是数字?