области видимости и другие хитрости 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()); |
Спасибо за ответы!
|
Цитата:
|
Создаю объект, метод его и свойство.Затем вызываю метод. В чем ошибка?
Var Jjj = new Object(); Jjj.age = 20; Jjj.getA = function() { alert(Jjj.age); } Jjj.getA(); или Var Jjj = {}; var n = 'age'; Jjj[n] = 20; Jjj.getA = function() { alert(Jjj['age']); } Jjj.getA(); |
Цитата:
|
Цитата:
|
Цитата:
var Joe = new Object(); Joe.age = 20; Joe.getAge = function() { alert(Joe.age); } Joe.getAge(); |
Цитата:
|
Цитата:
var joe = { age: 20, alertAge: function() { alert(this.age); } }; joe.alertAge(); |
BETEPAH, ТС же четко написал, что сомневается по поводу тех постулатов и просит указать, чо где не так. Если кто-то воспримет тот пост как проверенные утверждения - его проблемы, надо лучше читать.
|
Цитата:
Цитата:
var Name и var name это разное var Name = 'test_1', name = "test_2"; alert(Name); alert(name); UPD: Цитата:
|
Цитата:
|
Цитата:
Если ошибся, приношу свои извинения за несправедливый "минус", squirrelll. Это было последнее сообщение не по теме. |
Приму во внимание все замечания.
|
Приму во внимание все замечания.
|
Часовой пояс GMT +3, время: 05:59. |