如何在角度js中修剪字符串中的字符

时间:2017-02-17 10:26:38

标签: javascript angularjs

我想修剪字符串中的字符。我的输出字符串是“Val:980”。我需要修剪前4个字母,这样我才能获得980个字母。

<script>
    var app = angular.module('myApp', []);
    app.controller('myCtrl', function($scope, $http) {
        $http.get('https://example.com', {
            headers: {
                'Authorization': 'Basic fakjle=='
            }
        }).then(function(response) {
            $scope.names = response.data;
            $scope.decodedFrame = atob($scope.names.dataFrame) //Val:980               });
        });
    });
</script>

<div ng-app="myApp" ng-controller="myCtrl">
    <table>
        <tr>
            <td> {{decodedFrame} </td>
        </tr>
    </table>
</div>

6 个答案:

答案 0 :(得分:1)

尝试:

var value = $scope.decodedFrame.split(":")[1]; // actually safer to use split
value = (parseFloat(value) * 0.23) / 162;

看看(更多字符串方法): https://www.w3schools.com/js/js_string_methods.asp

答案 1 :(得分:1)

$ scope.decodedFrame.substring(4);

答案 2 :(得分:1)

如果您确定总是会得到“Val:”以及预期的数字(980),那么您可以通过以下方式使用拆分:

$scope.decodedFrame = $scope.decodedFrame.split('Val:')[1];

答案 3 :(得分:1)

你可以使用substring方法来获取像这样的字符

$scope.decodedFrame.substring(4);

但是,如果您需要在:符号后获取所有字符,请使用split方法

$scope.decodedFrame.split(':')[1];

答案 4 :(得分:1)

人们回答了如何修剪它,但也在.then块中修剪它,这样你就会有一个清晰整洁的标记。

最好的建议是创建一个修剪前4个字符的customFunction,并将该函数应用于.then成功回调中的所有结果。

答案 5 :(得分:1)

你实际上有很多方法。其中之一:

$scope.decodedFrame = atob($scope.names.dataFrame);
$scope.decodedFrame = $scope.decodedFrame.substring(4);

但是如果你有这个参数的名称的动态长度(“Val”,“Value”,“V”,......),你也可以尝试这样的事情:

var tempValue = atob($scope.names.dataFrame);
tempValue = tempValue.split(":");
tempValue = tempValue[1] || '';
$scope.decodedFrame = tempValue.trim();