Показать сообщение отдельно
  #2 (permalink)  
Старый 31.05.2016, 21:10
Кандидат Javascript-наук
Отправить личное сообщение для aklis Посмотреть профиль Найти все сообщения от aklis
 
Регистрация: 27.04.2015
Сообщений: 99

Обьяснюсь: было скучно, стало интересно разберусь ли в таком месиве.
Взял на себя труд привести код в более читабельный вид. Но тут возникла пара вопросов
var scr = {"scripts":[
      {"src" : "js/libs.js", "async" : false},
      {"src" : "js/common.js", "async" : false}
   ]};

  !function(t,n,r){
    "use strict";
    var c=function(t){
      if("[object Array]"!==Object.prototype.toString.call(t)) return!1;

	  for (var r=0;r<t.length;r++){
	    var c = n.createElement("script"), e = t[r];
	    c.src = e.src, c.async = e.async, n.body.appendChild(c); 
	   }

	  return !0
	};

    t.addEventListener ? t.addEventListener(" load",function(){c(r.scripts);},!1) :
    t.attachEvent ? t.attachEvent("onload",function(){c(r.scripts)}) :
    t.onload=function(){
      c(r.scripts)
    }
  };
  (window,document, scr);



Что это вообще за объявление такое?
!function(t,n,r){
Почему дебаггер не детектирует ошибку синтаксиса? Если синтаксис не нарушен - как это работает? Как такую функцию вызвать?

Последний раз редактировалось aklis, 31.05.2016 в 21:16.
Ответить с цитированием