Javascript 在使用forloop时如何删除udefind

Javascript 在使用forloop时如何删除udefind,javascript,jquery,arrays,angularjs,Javascript,Jquery,Arrays,Angularjs,当im绑定值时,im得到的值为undefinedAnil Singh1、Sunil Singh2、Sushil3、Aradhya4、Reena5,在这里如何删除undefind $scope.GetData = function () { for (var i = 0; i <$scope.employee.length; i++) { var abc = $scope.employee[i]; angular.forEach

当im绑定值时,im得到的值为undefinedAnil Singh1、Sunil Singh2、Sushil3、Aradhya4、Reena5,在这里如何删除undefind

$scope.GetData = function () {
        for (var i = 0; i <$scope.employee.length; i++) {
            var abc = $scope.employee[i];
            angular.forEach(abc, function (value, key) {               
                if (key == "name") 
                    {
                        if ($scope.emailNames != "undefined") {

                     $scope.emailNames = $scope.emailNames + value + ",";
                            console.log($scope.emailNames);
                        }
                    }
            })
$scope.GetData=函数(){

对于(var i=0;i我认为您需要检查未定义和非“未定义”

使用下面的.substring()方法

 $scope.GetData = function () {
        for (var i = 0; i <$scope.employee.length; i++) {
            var abc = $scope.employee[i];
            angular.forEach(abc, function (value, key) {               
                if (key == "name") 
                    {
                        if ($scope.emailNames != "undefined") {
                            $scope.emailNames = $scope.emailNames + value + ",";
                            var res = $scope.emailNames.substring(9);
                            console.log(res);
                        }


  }
        })
$scope.GetData=函数(){

对于(var i=0;i我认为您的问题在于您正在寻找字符串比较,但Javascript中未定义的不是字符串

这意味着你的支票:

if ($scope.emailNames != "undefined")
传递,然后将$scope.emailNames与新字符串连接,并将未定义的值转换为在控制台输出中找到的hist字符串版本:“未定义”

要演示如何尝试此代码,请执行以下操作:

var x;
var y = x + "some new string";
console.log(y);
你得到:

未定义的新字符串

要解决此问题,您需要修复if语句:

if ($scope.emailNames !== undefined)
请注意,我使用了!==检查$scope.emailNames是否也是同一类型

这意味着,如果您有一个null,它将再次失败,并且您将在日志中找到一些新字符串


在这样的情况下,只使用只有1个相等的“=”,考虑空值就像未定义的。

为什么减去它们是错误的。