如何在Angular.js中正确地将变量与字符串相等
How to equals correctly a Variable with String in Angular.js
我将在Angular.js中使用GET请求中的数据,如下所示。
var app = angular.module('Saidas',[]);
app.controller('Status', function($scope, $http, $interval) {
$interval(function(){
var request = $http.get('/SaidasSite');
request.success(function(data) {
if (data='QTD1LEDON') {
$('#QTD1LAMP').bootstrapToggle('on');
} else (data='QTDLEDOFF'){
$('#QTD1LAMP').bootstrapToggle('off');
} else (data='QTD2LEDON'){
$('#QTD2LAMP').bootstrapToggle('on')
} else { $('#QTD1LAMP').bootstrapToggle('on'); }
})
.error(function(data){
console.log('Error: ' + data);
});
}, 5000);
当我收到"QTD1LEDON"时,我将我的代码中的一个按钮切换到"ON",当我收到QT1LEDOFF时,我将切换到"OFF"。但是当我做这段代码时,比较总是"QTD1LEDON"。我做错了什么?
对不起,我的英语不好
您正在进行赋值而不是比较。因此,在第一个中,如果你给数据值'QTD1LEDON',并且总是为真。
你需要修复:
if (data='QTD1LEDON') {
:
if (data==='QTD1LEDON') {
您应该使用===
进行比较,而不是使用=
进行赋值。
在javascript中,您使用===
或==
进行比较。
在你的代码中,你使用=
,它只是给你的data
变量赋一个值,这意味着条件总是计算为真:if (data='QTD1LEDON') {
您需要使用==
或===
,它将表现为您所期望的:
if (data === 'QTD1LEDON') {
你在做赋值而不是比较,你也有3个else
语句,你应该只有一个,所以你应该有像
if (data === 'QTD1LEDON') {
...
} else if (data === 'QTDLEDOFF') {
...
} else if (data === 'QTD2LEDON') {
...
} else { ... }
相关文章:
- 使用JSON文件中的变量(字符串)填充文本区域
- 如何向变量字符串添加更多值
- jquery将变量字符串作为ID's
- 如何用HTML和相应的引号形成变量字符串
- PHP 反序列化 JS 序列化的变量字符串
- Javascript 不传递整个变量字符串
- 带有变量字符串的索引
- 如何将表单类值合并到新的变量字符串中
- 在 JavaScript 中将变量字符串括起来
- jQuery:用变量字符串替换(连接的)按钮值
- "[对象对象]”;在警报提示中使用时替换变量字符串
- 通过变量字符串定义对象
- 无法在Javascript中连接字符串+变量+字符串
- Fancybox-是否可以使用javascript变量字符串作为HTML内容
- 从变量字符串应用条件
- 如何在pug中插入变量字符串
- Javascript -在变量字符串中捕获名称
- 不能把变量(字符串)在javascript innerhtml
- 用变量字符串调用React类
- 使用 Browserify/Babel/node.js您是否需要一个基于变量字符串的文件