#javascript
#javascript
Вопрос:
У меня есть такая переменная:
columnData = new Array(columnWidth, columnIndex);
оба значения являются числами
и затем я хочу сделать следующее:
thiscolumnWidth = columnData[1] WHERE columnData[2] == cellIndex;
идея в том, что я хочу thiscolumnWidth
, чтобы это было значение первого значения в массиве columnData
, где второе значение columnData
соответствует cellIndex
значению.
Причина этого заключается в том, что все это находится внутри цикла foreach, поэтому ему необходимо найти правильный массив в памяти! Все это РАБОТАЕТ отдельно от предложения Where, которого не существует в JS.
Кто-нибудь может помочь? Приветствия
Комментарии:
1. Взгляните на JSINQ (LINQ to Objects для Javascript) jsinq.codeplex.com — Он хорошо справляется с задачей, позволяя вам быстро запрашивать массивы и объекты с помощью SQL-подобных запросов.
2. Кстати … индексация массива начинается с 0, а не с 1.
Ответ №1:
Помимо использования JSLINQ, вы могли бы просто сделать что-то вроде:
if (columnData[2] == cellIndex){
thiscolumnWidth = columnData[1];
}
Ответ №2:
Дайте этому поворот, разработанный в WSH, но будет работать везде, где запускается JavaScript.
var aValues = new Array();
aValues[100] = 123;
aValues[200] = 234;
aValues[300] = 234;
var nValue = aValues[100];
WScript.Echo( nValue );
var nValue = aValues[200];
WScript.Echo( nValue );