לוגו אתר Fresh          
 
 
  אפשרות תפריט  ראשי     אפשרות תפריט  צ'אט     אפשרות תפריט  מבזקים     אפשרות תפריט  צור קשר     חץ שמאלה ‎print ‎"Hello World!"; if‎ ‎not rules.‎know ‎then rules.‎read(); חץ ימינה  

לך אחורה   לובי הפורומים > מחשבים > תכנות ובניית אתרים
שמור לעצמך קישור לדף זה באתרי שמירת קישורים חברתיים
תגובה
 
כלי אשכול חפש באשכול זה



  #2  
ישן 25-05-2012, 03:58
צלמית המשתמש של ShoobyD
  משתמש זכר ShoobyD מנהל ShoobyD אינו מחובר  
מנהל משבראש, בלשנות, תכנות ויהדות
 
חבר מתאריך: 04.06.06
הודעות: 33,130
שלח הודעה דרך MSN אל ShoobyD Facebook profile LinkedIn profile Follow me...
בתגובה להודעה מספר 1 שנכתבה על ידי The_Equivocator שמתחילה ב "כולם כאן נותנים חידות בC, אז אני רוצה בJS.. (נתחיל ממשהו די בסיסי)."

אממ.. אני די בטוח שטווח ההכרה ב־JS הוא תלוי פונקציה (ולא תלוי בלוק, כמו לדוגמא ב־C), ואם כך, גם הרישום הראשון בפונקציה f יתייחס לאותו משתנה a הלוקאלי, אך מכיוון שטרם אותחל, ערכו יהיה "לא מוגדר".
במילים אחרות, לטרמינל יודפס undefined ואז 55?

אם אני טועה, אז יודפס 5 ואז 55, אך מכיוון שמדובר בחידה, כלומר שאמור להיות קאץ׳ כלשהו, אני מניח שזה הוא.


עריכה: ארחיב ואוסיף שלדעתי אפילו אם בפונקציה הייתה השמה כגון:
קוד PHP:
 var a=5;

function 
f() {
    
17;
    
console.log(a);
    var 
a=55;
    
console.log(a);
}


f(); 

אזי היא אמורה להתבצע על המשתנה המקומי, למרות שלכאורה מוכרז לאחר מכן.
המשתנה הגלובאלי יוותר ללא שינוי.


נערך לאחרונה ע"י ShoobyD בתאריך 25-05-2012 בשעה 04:25.
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #9  
ישן 25-05-2012, 11:52
  The_Equivocator The_Equivocator אינו מחובר  
 
חבר מתאריך: 11.02.04
הודעות: 16,543
בתגובה להודעה מספר 6 שנכתבה על ידי Eran שמתחילה ב "זה לא C, זה סקריפט.. תעיף את..."

הלו בחורציק?
למה לדבר שטויות שאין להם שום אחיזה במציאות?
חייבים לכתוב VAR, ברגע שאתה לא מכריז var המשתנה מוגדר אוטומט, להיות גלובאלי.
לא אכנס לפרטים עכשיו. (תלוי בגרסת הECMA ), זה מייצר בנוסף עוד צרות בלתי צפויות.
כך ששני קטעי הקוד הפשוטים והתממים הללו(למראה) לא דווקא זהים.

1)
קוד:
var x=1;


קוד:
x=1;
(2

זה אגב עוד פאק רציני בשפה, עצם האפשרות להגדיר משתנה ללא הכרזת var

ציטוט:
זה לא C, זה סקריפט.. תעיף את ה var.

מה הקשר סקריפט או לא? מה ההבדל בכלל בין "סקריפט" למשהו מקומפל?
ציטוט:
ה var לא הופך אותו ל int או לכל סוג אחר

הVAR יוצר קשר בין שם משתנה לערך, בסקופ.

בקוד שלך לא באמת "תקנת" משהו, אלה בתוך הפונקציה במקום להגדיר משתנה מקומי הגדרת משתנה גלובאלי!(בעצם לא הגדרת, הוא הוגדר אצלך עוד מקודם גלובאלי). הקוד שלך שקול לקוד הבא(רק שזה קוד תקני).
קוד:
var foo = 1; function bar() { if (!foo) { foo = 10; } alert(foo); } bar();


מה שאתה עושה זה נורא ואיום. תחשוב מה עושה הקוד הזה.

קוד:
function f(){ x=1; return x; } f(); console.log(x);//now x is global var x=1, this is very bad
..

קוד:
function f(){ var x=1; return x; } f(); console.log(x);//error x is not defined, witch is good
..

נערך לאחרונה ע"י The_Equivocator בתאריך 25-05-2012 בשעה 12:20.
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #10  
ישן 25-05-2012, 12:55
צלמית המשתמש של Eran
  משתמש זכר Eran Eran אינו מחובר  
 
חבר מתאריך: 27.02.02
הודעות: 4,536
שלח הודעה דרך ICQ אל Eran
בתגובה להודעה מספר 9 שנכתבה על ידי The_Equivocator שמתחילה ב "הלו בחורציק? :) למה לדבר..."

אני אוהב לטעות


קוד PHP:
 <script type="text/javascript" language="JavaScript">
var 
a1="a1";
a2="a2";
var 
a3="a3";
a4="a4";

function 
f()
{
    var 
a1="a5";
    
a2="a6";

    var 
b1="b1";
    
b2="b2";
}
f();


document.write(a1);
document.write("<br />");
document.write(a2);
document.write("<br />");
document.write(a3);
document.write("<br />");
document.write(a4);
document.write("<br />");
//document.write(b1); NOT DEFINED
document.write("<br />");
document.write(b2);

</script> 

פלט:
a1
a6
a3
a4

b2

כמו שציינת...
_____________________________________

[התמונה הבאה מגיעה מקישור שלא מתחיל ב https ולכן לא הוטמעה בדף כדי לשמור על https תקין: http://fresh.clanteam.com/list.png]

[התמונה הבאה מגיעה מקישור שלא מתחיל ב https ולכן לא הוטמעה בדף כדי לשמור על https תקין: http://fresh.clanteam.com/?https://2010-uploaded.fresh.co.il/2010/09/21/52868411.gif,http://www.boredpanda.com/blog/wp-content/themes/mimbo2.2/images/subscribe-panda-605px.png]


נערך לאחרונה ע"י Eran בתאריך 25-05-2012 בשעה 12:57.
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
תגובה

כלי אשכול חפש באשכול זה
חפש באשכול זה:

חיפוש מתקדם
מצבי תצוגה דרג אשכול זה
דרג אשכול זה:

מזער את תיבת המידע אפשרויות משלוח הודעות
אתה לא יכול לפתוח אשכולות חדשים
אתה לא יכול להגיב לאשכולות
אתה לא יכול לצרף קבצים
אתה לא יכול לערוך את ההודעות שלך

קוד vB פעיל
קוד [IMG] פעיל
קוד HTML כבוי
מעבר לפורום



כל הזמנים המוצגים בדף זה הם לפי איזור זמן GMT +2. השעה כעת היא 17:39

הדף נוצר ב 0.07 שניות עם 10 שאילתות

הפורום מבוסס על vBulletin, גירסא 3.0.6
כל הזכויות לתוכנת הפורומים שמורות © 2024 - 2000 לחברת Jelsoft Enterprises.
כל הזכויות שמורות ל Fresh.co.il ©

צור קשר | תקנון האתר