Обертка вокруг GNU ld, которая не поддерживает скрипты компоновщика
. Некоторые .so-файлы на самом деле являются GNU ld ссылками-компоновщиками , например. Файл libtbb.so является текстовым файлом ASCII с этим содержимым:
INPUT (libtbb.so.2)
Некоторые более сложные сборки могут не поддерживать это. Например, если вы включаете -v в параметры компилятора, вы можете видеть, что mainwin gcc wrapper mwdip отбрасывает файлы команд сценария компоновщика в подробном списке результатов библиотек для ссылки. Простая работа вместо файла командной строки ввода сценария компоновщика вместо копии (или символической ссылки), например
cp libtbb.so.2 libtbb.so
Или вы можете заменить аргумент -l полным путем .so, например вместо -ltbb
сделать /home/foo/tbb-4.3/linux/lib/intel64/gcc4.4/libtbb.so.2
Вам нужно сделать это:
if( $.inArray('Aqua', arrVals) > -1 ) {
или это:
if( $.inArray('Aqua', arrVals) !== -1 ) {
Метод $.inArray()
возвращает значение 0
индекс элемента. Если нет элемента, он возвращает -1
, который оператор if()
будет считать true
.
Из документов:
Поскольку JavaScript обрабатывает 0 как (т.е. 0 == false, но 0! == false), если мы проверяем наличие значения внутри массива, нам нужно проверить, не равен ли он (или больше) -1.
blockquote>
EDIT: вместо того, чтобы вставлять оба значения в массив как объект, просто используйте один или другой, так что у вас есть массив строк, из которого вы можете создать множественный селектор.
Один из способов:
// Create an Array from the "value" or "text" of the select options var arrVals = $.map( $dd[0].options, function( opt, i ){ return opt.value || opt.text; }); // Build a multiple selector by doing a join() on the Array. $( "#" + arrVals.join(',#') ).show();
Если массив выглядит так:
['Army','Aqua','Bread'];
Результирующий селектор будет выглядеть так:
$( "#Army,#Aqua,#Bread" ).show();
ES6 на помощь! Хотя это не jQuery, я думал, что стоит отвечать будущим читателям ...
ES6 вводит .includes()
, который работает так, как вы думаете $.inArray
СЛЕДУЕТ работать:
const myArray = ["a", "b", "c"];
console.log(myArray.includes("a")) /* true */
console.log(myArray.includes("d")) /* false */