yandex js webdev test

by qfox

JavaScript

/* 
Реализуйте функцию getElementsByClassName
*/

var myGetElementsByClassName = function(cls) {
    var tester = new RegExp('\b' + cls + '\b');
    return document.getElementsByTagName('*').filter(function(node) {
        return tester.test(node.getAttribute('class'));
    });
};

var myGetElementsByClassName2 = function(cls) {
    var tester = new RegExp('\b' + cls + '\b');
    var nodes = document.getElementsByTagName('*');
    for (var i = 0, l = nodes.length; l; --l, ++i) {
        if (!tester.test(node.getAttribute('class'))) {
            delete nodes[i];
        }
    };
};

/*
Напишите функцию на js, которая определяет является ли входяшее выражение палиндромом( словом которое одинаково читается в обе стороны “лол” “А роза упала на лапу Азора”).
Функция не должна содержать циклов.
*/

var isStringPaleendromed = function(str) {
    var lowered = str.toLowerCase();
    return lowered === lowered.split('').reverse().join('').toLowerCase();
};