Я довольно новичок в jQuery, и я не понимаю, почему этот цикл не отображает свойства объекта.Зацикливание объекта со строковым массивом
Буду Вам признателен, если вы могли бы помочь мне.
var shop_array = ["title","price","img","text"];
var submit = $(".add").find(":submit");
submit.on("click",function(e){
var elements = $(".add").children(':input');
for(var i=0;i<elements.length;i++){
if($(elements[i]).val()!==""){
var object = '\"'+shop_array[i]+'\"';
console.log(shopcart.shop_values[object])//dosen't display shop_value;
console.log(object);
}
}
});
var shopcart= {
shop_values :{
"title":"a",
"price":"b",
"img":"img",
"text":"text"
},
add: function(){
}
}
Прежде всего, «объект» - действительно плохое имя переменной и приведет к путанице. Во-вторых, вы добавляете к значению ведущие и конечные косые черты, где ни одно из значений в объекте 'shop_values' не имеет косой черты, поэтому они никогда не будут совпадать. –