области видимости и другие хитрости JavaScript
Изучая JS, параллельно тестируюь, есть сомнения.. Очень важно мнение экспертов
1.
function f(a,b)
{
...
}
При вызове f(11), какое значение будет иметь аргумент b внутри функции? Oтвет: Null 2.
var m = parseInt("strin");
Какое значение будет иметь m? Oтвет: m=0. 3.
function f(n)
{
if (n > 10)
{
var k = "n";
}
}
Какую область видимости имеет k? Oтвет: k-Лок.переменная.Находится в начале области видимости функции, а не на уровне блока кода if... 4.
var myPrj = {};
myPrj.myObj = (function() {
var myPrivateVar = "private";
var myPrivateFun = function() {
return myPrivateVar;
};
return {
publicFunName: myPrivateFun();
};
})();
К чему приведут вызовы m , n: a) var m = myPrj.myObj.publicFunName(); b) var n = myPrj.myObj.myPrivateFun(); Ответ: m="private", n="private" |
В ФФ еще можно Shift+F4 - там целый блокнотик с возможностью запуска.
|
вопрос
var k; k == undefined ??? |
А что не так?
|
Цитата:
2. NaN |
Ответы:
1. undefined 2. NaN 3. У вас правильный ответ 4. m="private", n=Ошибка выполнения кода |
Цитата:
За что вы человека в минуса вогнали? только потому что человек учит язык и просит совета у знающих вы лупите минуса. Не справедливо мне кажется. |
Чем "Подобное можно проверять самостоятельно при помощи консоли" не совет?
|
Цитата:
function f(a,b)
{
alert(b);
}
f(10);
2)
var m = parseInt("strin");
alert(m);
3)
function f(n)
{
if (n > 10)
{
var k = "n";
alert(k+" в if");
}
alert(k + " в функции");
}
f(15);
alert(k + " в глобальной области видимости");
4)
var myPrj = {};
myPrj.myObj = (function() {
var myPrivateVar = "private";
var myPrivateFun = function() {
return myPrivateVar;
};
return {
publicFunName: myPrivateFun()
};
})();
alert(myPrj.myObj.publicFunName());
alert(myPrj.myObj.myPrivateFun());
|
Спасибо за ответы!
|
| Часовой пояс GMT +3, время: 04:31. |