JavaScript是否以某種方式支持指針算術?javascript中的數組指針
例如,我有數組
var arr = [1,2,3,4];
console.log(arr); /* this prints [1,2,3,4] */
是否有可能做這樣的事情:
var arr2 = arr + 2; /* obviously this is not the correct way */
console.log(arr2); /* this should have printed [3,4] */
,而無需創建數組的副本(我只需要一個指針在C) 。
我需要這個的具體原因如下:我有一個大的數組,其中每個元素是一對字符串,布爾值,例如,
var arr = [['name1',true],['name2',false]];
我想喂數組爲ng-repeat(我正在使用Angular JS)。該數組由數千個這樣的元素組成,並且來自服務/工廠(即通過引用返回)。我想在4列中顯示數組的內容,每個字符串後面都有一個複選框。要做到這一點,我在下面的方式4 NG-重複:
<div class="col-lg-3">
<div class="checkbox" ng-repeat="x in arr" ng-if="$index % 4 == 0">
<label><input type="checkbox" ng-model="x[1]">{{x[0]}}</label>
</div>
</div>
<div class="col-lg-3">
<div class="checkbox" ng-repeat="x in arr" ng-if="$index % 4 == 1">
<label><input type="checkbox" ng-model="x[1]">{{x[0]}}</label>
</div>
</div>
<div class="col-lg-3">
<div class="checkbox" ng-repeat="x in arr" ng-if="$index % 4 == 2">
<label><input type="checkbox" ng-model="x[1]">{{x[0]}}</label>
</div>
</div>
<div class="col-lg-3">
<div class="checkbox" ng-repeat="x in arr" ng-if="$index % 4 == 3">
<label><input type="checkbox" ng-model="x[1]">{{x[0]}}</label>
</div>
</div>
這種方法很慢,因爲我需要數組遍歷4次。 我不能預處理數組(即將其分割成四個同樣大的部分,我將傳遞給每個ng-repeat而不使用ng-if),因爲我使用ng-model指令來允許用戶更新數組,並依次執行服務(由於數組是從服務引用返回的,因此這是自動完成的)。因此,(理論上)理想將是有四個指針(每個指向數組的特定部分),並通過limitTo過濾器將每個指針傳遞給ng-repeat。
沒有,因爲它不使用這樣的內存指針。 (它使用指針,但不支持C類型的數學方法) – Nikki9696
這將是很好的,但會發生什麼,它會被轉換爲字符串 –
它確實支持索引。不知道你爲什麼不使用它?或拼接。 – Nikki9696