由于swift没有通过case
语句switch
,如何在不出错的情况下编写空的case语句?
let a = 50
switch a {
case 0..10:
case 10..100:
println("between 10 and 100")
default:
println("100 and above")
}
Run Code Online (Sandbox Code Playgroud)
如何让第一种情况停止开关?
有没有一种名为indexof或类似的方法?
var array = ["Jason", "Charles", "David"]
indexOf(array, "Jason") // Should return 0
Run Code Online (Sandbox Code Playgroud) 在以下场景中我有角度的性能问题:
<div ng-repeat="a in array">
<input ng-model="something">
</div>
Run Code Online (Sandbox Code Playgroud)
我在我的控制器中编写了代码,用于ng-click
更改数组以拥有不同的对象集.问题是,如果数组具有相当数量的对象,则点击不像我希望的那样响应(短暂延迟).
经过一番调查后,我发现$digest
在我改变阵列后需要很长时间ng-click
.所以我创建了这个简短的测试代码来重现它.
真正的应用场景是这样的:我有一个表,其中每一行代表一个可编辑的对象,每个对象有许多我想要编辑的不同字段.这样,每当我点击表格中的一行时,就会有另一个html,其中包含我对象属性上ng-repeat
不同input
s的所有s .
有没有人知道如何提高效率?
谢谢
我正在使用这个简单的html文件来重现我发现的内存泄漏:
<!doctype html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.6/angular.min.js"></script>
<script>
var app = angular.module('testApp', []);
app.directive('directive1', function() {
return {
template: '<div directive2></div>',
scope: true
};
});
app.directive('directive2', function () {
function LeakObject() {}
function Foo() {
this.bar = function($scope) {
$scope.nottheredude;
};
}
return {
scope: true,
link: function($scope) {
$scope.memoryThatLeaks = new LeakObject();
new Foo().bar({});
new Foo().bar($scope);
}
};
});
</script>
</head>
<body ng-app="testApp">
<button ng-click="show = !show">Toggle</button>
<div ng-if="show">The directive <div directive1></div></div>
<div ng-if="!show">Nothing</div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
我有一个指令,只创建一个新的范围,并在其模板中有另一个指令.
另一个指令做了一些有点奇怪的事情(我试图将问题缩小到导致泄漏的问题,这是我发现的最短代码再现问题).
在我的主要HTML中,我只是在没有任何东西和 …