Для получения полного доступа
зарегистрируйтесь.

FullZero    7   6 552


Видимо, пользователь решил о себе ничего не говорить.
  • js
  • IT
  • Зарегистрирован 4 года назад
Профиль завершён на 25 %
25 %
(function($) {
    $.rand = (arg)=>{
        return ($.isArray(arg))?arg[$.rand(arg.length)]:(typeof arg == "number")?Math.floor(Math.random() * arg):11;
    };
})(jQuery);
var items = [523,3452,334,31,57,5346];
console.log($.rand(10));
console.log($.rand(items));
console.log($.rand());

Иногда при выгрузке товаров в json к товару может быть массив картинок,одна картинка или вообще небыть изображения используя функцию можно либо вернуть спец.картинку вместо отсутствующего изображения либо первую из массива

let obj,
arr= ['image1.jpg','image2.jpg'],
str ="image.jpg";

function is_array(a){
	return (typeof a ==='undefined')? 'noimage.jpg':((typeof a == "object") && (a instanceof Array)) ? a[0] : a;
}
console.log(is_array(obj))
console.log(is_array(arr));
console.log(is_array(str));
var data =[
{name:'Яблоко',cost:21},
{name:'Яблоко',cost:21},
{name:'Яблоко',cost:20},
{name:'Груша',cost:30},
{name:'Слива',cost:20}
];
function uniq(arr) {
    const index = [];
    return arr.filter((elem) => {
        const str = JSON.stringify(elem);
        return index.includes(str) ? false : index.push(str);
    });
}
//по полю
function onlyUniq(myArr, key) {
    return myArr.filter((obj, pos, arr) => {
        return arr.map(el => el[key]).indexOf(obj[key]) === pos;
    });
}
console.log(uniq(data));
console.log(onlyUniq(data, 'name'));
(function () {
    var getDayName = function (lang) {
    var day = new Date(this).getDay(),
        weekdays = getDayName.i18n[lang || "ru"];
    return weekdays[day];
    };
    Date.prototype.getDayName = getDayName;
}());

var date = new Date();
date.getDayName.i18n = {
    en: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
    ru: ["Воскресенье", "Понедельник", "Вторник", "Среда", "Четверг", "Пятница", "Суббота"]
};
console.log(date.getDayName());
console.log(date.getDayName('en'));
// кол дней в месяце не учитывается высокостный или нет x- номер месяца
function f(x) { 
return 28 + (x + Math.floor(x/8)) % 2 + 2 % x + 2 * Math.floor(1/x);
}
alert(f(10));