FYMCA JavaScript Session Plan
FYMCA JavaScript Session Plan
Programme MCA
Client Side Scripting using Java
Title of the Course Script
Course Code MCA240212
No. of Credits 4
Total No. of Hours
60
(1 credit=15 hours)
No. of Sessions
60
(1 session=1 hour)
Marks 100
Pre-requisite Course(s) if any HTML, CSS
Specialization, if any NA
Course Revision No.
Academic Year 2024-2025
Batch (admission year) 2024
Semester number 2
Name of the Faculty Prof. Mayuri Bhnadari
Faculty Email Address [email protected]
Faculty Contact number 9763404557
Pre- Class
Post Reflective
Homework/ Pedagogy CO1 CO2 CO3 CO4 CO5 Actual Date
Session Objective Work (Specific
Session No Topic/s Sub- Topics Duration Pre-reads (Specific (*Refer Useful reads Mapping Mapping Mapping Mapping Mapping Date Planned Conducted
(SO) Description,Provide (DD-MM-YYYY)
Description, sheet) with SO with SO with SO with SO with SO (DD-MM-YYYY)
links if any)
Provide links if any)
Implement a
Teach decision- program using if-
Control Structures (if, else, making constructs else and switch- Strong Weak No No No
11 1 hour Live Coding 17-Jan-25
https://www.geeksforgeeks.org/control-statements-in-javascript/#:~:text=JavaScript%20control%20statement%20is%20used,that%20satisfies%20that%20particular%20condition.
switch) for conditional case and share your Linkage Linkage Linkage Linkage Linkage
execution of code. observations about
code readability.
Explain iterative
Write a reflection
constructs (for,
comparing the use
while, do-while) Practice-Driven Strong Weak No No No
12 Control Structures (loops) 1 hour cases of for, while,
https://www.youtube.com/watch?v=s9wW2PpJsmQ&pp=ygUZSmF2YVNjcmlwdCBMb29wcyBUdXRvcmlhbA%3D%3D 21-Jan-25
for repeated Learning Linkage Linkage Linkage Linkage Linkage
and do-while loops
execution of code
with examples.
blocks.
Unit 2- Functions
Introduce the
Write a function to
syntax and
Basic Syntax of JavaScript Direct Instruction with calculate factorial No Strong No No No
13 1 hour structure of https://www.w3schools.com/js/js_functions.asp#:~:text=A%20JavaScript%20function%20is%20defined,%2C%20parameter2%2C%20...) 22-Jan-25
Function Examples and reflect on the Linkage Linkage Linkage Linkage Linkage
functions in
logic used.
JavaScript.
Write a comparison
Teach the concept table between
of function Collaborative coding function No Strong No No No
16 Function Expression 1 hour 28-Jan-25
https://www.freecodecamp.org/news/function-declaration-vs-function-expression/#:~:text=Without%20assigning%20it%20to%20a,function%20expression%20assigned%20to%20it.
expressions and task declarations and Linkage Linkage Linkage Linkage Linkage
their usage expressions with
examples.
Reflect on the
Explain the
advantages and
concept of No Strong No No Weak
19 Anonymous function 1 hour Code Challenges disadvantages of 31-Jan-25
https://www.geeksforgeeks.org/javascript-anonymous-functions/#:~:text=What%20are%20Anonymous%20Functions%3F,as%20arguments%20for%20other%20functions.
anonymous Linkage Linkage Linkage Linkage Linkage
anonymous
functions
functions
Practice creating
Demonstrate how functions with
to set default default parameters No Strong No No Weak
20 Default Parameters 1 hour Guided Coding Practice
https://www.w3schools.com/js/js_function_parameters.asp 4-Feb-25
values for function and reflect on their Linkage Linkage Linkage Linkage Linkage
parameters use in dynamic
applications
Discuss guidelines
Reflect on three
and practices for
best practices and
Best Practices for Function writing efficient, No Strong No No No
24 1 hour Class Discussion how they improve
https://www.freecodecamp.org/news/javascript-tips-for-better-web-dev-projects/ 11-Feb-25
Design reusable, and well- Linkage Linkage Linkage Linkage Linkage
code readability
structured
and reusability
functions.
Implement an
object with multiple
Explore how to
properties and
define and use No No Strong No Weak
26 Properties and Methods 1 hour Hands-On Exercises methods, and
https://www.w3schools.com/js/js_object_methods.asp 13-Feb-25
object properties Linkage Linkage Linkage Linkage Linkage
document its
and methods
application in real-
world scenarios
Demonstrate how
to use bind, call, Practice using bind,
No No Strong No Weak
30 Bind, Call, and Apply Methods 1 hour and apply to Code Experimentation call, and apply 20-Feb-25
https://www.youtube.com/watch?v=75W8UPQ5l7k&pp=ygUwSmF2YVNjcmlwdCBiaW5kKCksIGNhbGwoKSwgYW5kIGFwcGx5KCkgRXhwbGFpbmVk
Linkage Linkage Linkage Linkage Linkage
control the methods
function context.
Introduce object-
oriented
programming Reflect on the role
Encapsulation and No No Strong No Weak
31 1 hour concepts like Real-World Analogies of encapsulation
https://developer.mozilla.org/en-US/docs/Learn_web_development/Extensions/Advanced_JavaScript_objects 21-Feb-25
Polymorphism Linkage Linkage Linkage Linkage Linkage
encapsulation and and polymorphism
polymorphism in
JavaScript
Explain array
creation, explore
Practice array
Array - Creation, Methods, array methods, and No No Strong No Weak
33 1 hour Guided Exercises manipulation using
https://www.freecodecamp.org/news/javascript-array-tutorial-array-methods-in-js/ 26-Feb-25
Multidimensional Arrays demonstrate Linkage Linkage Linkage Linkage Linkage
various methods
multidimensional
arrays
Introduce string
Write a program
creation and No No Strong No Weak
34 String - Creation, Methods 1 hour Code Practice utilizing multiple
https://www.youtube.com/watch?v=8yg4RUEnaIk&pp=ygUiSmF2YVNjcmlwdCBTdHJpbmcgTWV0aG9kcyBUdXRvcmlhbA%3D%3D 27-Feb-25
manipulation using Linkage Linkage Linkage Linkage Linkage
string methods
JavaScript methods
Explain how to
work with dates Create a program
Scenario-Based No No Strong No Weak
35 Date - Methods, Properties 1 hour and time using that formats and
https://www.youtube.com/watch?v=8yg4RUEnaIk&pp=ygUiSmF2YVNjcmlwdCBTdHJpbmcgTWV0aG9kcyBUdXRvcmlhbA%3D%3D 28-Feb-25
Learning Linkage Linkage Linkage Linkage Linkage
JavaScript's Date manipulates dates
object
Demonstrate the
Write a reflection
usage of
on how Math
JavaScript's Math
methods simplify No No Strong No Weak
36 Math - Methods, Properties 1 hour object for Coding Challenges
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math 4-Mar-25
complex Linkage Linkage Linkage Linkage Linkage
mathematical
calculations in
operations and
JavaScript
constants
Explain the
traditional method Write a program
Different Ways of Event Handling of handling events implementing Weak No No Strong No
40 1 hour Direct Coding Practice
https://www.w3schools.com/js/js_events.asp 11-Mar-25
- through HTML by directly inline event Linkage Linkage Linkage Linkage Linkage
embedding handlers
JavaScript in HTML
Teach modern
Write about the
event handling
advantages of
using the
Different Ways of Event Handling Demonstration and addEventListener Weak No No Strong Weak
41 1 hour addEventListener https://www.youtube.com/watch?v=XF1_MlZ5l6M&pp=ygUaSmF2YVNjcmlwdCBFdmVudCBMaXN0ZW5lcnM%3D 12-Mar-25
- through AddEventListener Practice over inline event Linkage Linkage Linkage Linkage Linkage
method for
handling with
flexibility and
examples
efficiency
Write a short
Illustrate the program
concept of event illustrating event
Diagram-Based No No No Strong No
43 Event Capturing 1 hour capturing and its capturing and
https://developer.mozilla.org/en-US/docs/Learn_web_development/Core/Scripting/Events 14-Mar-25
Explanation Linkage Linkage Linkage Linkage Linkage
role in event reflect on its
propagation differences from
bubbling
Explore mouse-
Write a reflection
related DOM
on implementing No No No Strong No
44 DOM Events–Mouse events 1 hour events such as Experimentation Tasks
https://w3schools.invisionzone.com/topic/25137-divs-and-onkeydown/ 18-Mar-25
mouse hover effects Linkage Linkage Linkage Linkage Linkage
click, mouseover,
using mouse events
and mousedown
Teach handling
keyboard-related
Write a program
DOM events like No No No Strong No
45 DOM Events – Keyboard events 1 hour Experimentation Tasks handling keypress
https://www.youtube.com/watch?v=q32skvBgxo4&pp=ygUaSmF2YVNjcmlwdCBLZXlib2FyZCBFdmVudHM%3D 19-Mar-25
keydown, Linkage Linkage Linkage Linkage Linkage
events
keypress, and
keyup
Reflect on how
Demonstrate how
JavaScript
to manage and Problem-Based No No Weak Strong No
47 Forms Handling 1 hour simplifies handling
https://developer.mozilla.org/en-US/docs/Web/API/HTMLFormElement 21-Mar-25
process form input Learning Linkage Linkage Linkage Linkage Linkage
form input and
using JavaScript
submission
Write examples of
Teach client-side
validating form
form validation
Problem-Based fields and reflect on No No Weak Strong No
48 Forms Validation 1 hour techniques to https://www.youtube.com/watch?v=In0nB0ABaUk&pp=ygUjSmF2YVNjcmlwdCBGb3JtIFZhbGlkYXRpb24gVHV0b3JpYWw%3D 25-Mar-25
Learning the importance of Linkage Linkage Linkage Linkage Linkage
ensure data
user input
integrity
validation
Introduce
Write about the
JavaScript modules
advantages of Strong Moderate No No Moderate
50 Modules 1 hour for organizing and https://www.freecodecamp.org/news/javascript-modules-beginners-guide/
Interactive Examples 27-Mar-25
modular Linkage Linkage Linkage Linkage Linkage
reusing code
programming
effectively
Reinforce error
handling concepts Solve exercise on Write programs to
Error Handling with try-catch- Strong Strong Weak Moderate Weak
53 1 hour through hands-on https://javascript.in Debugging Practice handle different 2-Apr-25
finally - Practice programs Linkage Linkage Linkage Linkage Linkage
programming fo/try-catch types of exceptions
exercises
Write about
Provide an
scenarios where
overview of React
Introduction to JavaScript Video Tutorials and React could No Weak Strong Moderate Strong
54 1 hour and its role in https://www.youtube.com/watch?v=N3AkSS5hXMA&pp=ygUOV2hhdCBpcyBSZWFjdD8%3D 3-Apr-25
Frameworks (React) Discussion simplify web Linkage Linkage Linkage Linkage Linkage
building modern
development
web applications
workflows
Explain React
components and
Practice creating a
Basic Concepts of React their significance No Weak Strong Moderate Strong
56 1 hour Hands-On Projects
https://react.dev/reference/react/Component basic React 8-Apr-25
(Components) in building Linkage Linkage Linkage Linkage Linkage
component
reusable UI
elements
Explore state Write a reflection
management and on the challenges of
Basic Concepts of React (State, No Weak Strong Moderate Strong
57 1 hour data passing in Hands-On Projects managing state and
https://www.freecodecamp.org/news/react-js-for-beginners-props-state-explained/ 9-Apr-25
Props) Linkage Linkage Linkage Linkage Linkage
React using state props in a small
and props React app
Highlight the
features and
Practice using
Overview of Other Libraries applications of Weak Weak No Strong No
58 1 hour Practice examples jQuery for DOM
https://www.youtube.com/watch?v=1CFVBfH8g-g&pp=ygUWSW50cm9kdWN0aW9uIHRvIGpRdWVyeQ%3D%3D 10-Apr-25
(jQuery) jQuery for DOM Linkage Linkage Linkage Linkage Linkage
manipulation
manipulation and
AJAX
Details
Recommended Readings
1. JavaScript A Beginner’s Guide - John Pollock, 4th Edition, Mc Graw Hill Education
2. Eloquent JavaScript - Marijn Haverbeke, 3rd Edition, No Starch Press.
Books 3. JavaScript The definitive guide – David Flanagan, 6th Edition, O’reilly
4. JavaScript Frameworks for Modern Web Development – 2nd Edition, Sufyan bin Uzayr, APress
MOOCs https://www.linkedin.com/learning/javascript-essential-training?u=351586674
Internal Assessment Plan
Assessment-CO Mapping
Assessment Bloom's Level Weightage
Assessment Marks
Description of the task Elements/Par (Indicate in (% of total marks CO1 CO2 CO3 CO4 CO5
Task No Allocated Roman numeral) allocated)
ameters
Level II
Assessment 1 20 LinkedIn Learning Level III 25% Strong Linkage Strong Linkage Strong Linkage Strong Linkage Strong Linkage
Level IV
Level I
Assessment 2 20 Class Test 25% Strong Linkage Strong Linkage No Linkage No Linkage No Linkage
Level II
Level I
Assessment 3 20 MCQ Quiz Level II 25% No Linkage No Linkage Strong Linkage Strong Linkage Strong Linkage
Level III
Pedagogy https://www.ugc.gov.in/pdfnews/7900069_Guidelines-PEA.pdf
*Pedagogical tools(Indicative)
1 Lecture
2 Activity-based learning
3 Class Discussion
4 Flipped Classroom
5 Case Study
6 Workshop
7 Probing/Guided questionin
8 Project Work
9 Field work
10 Debate
11 Storytelling
12 Learning by design
13 Role Plays
14 Siumlation
15 Game based teaching
No Linkage ###
Weak Linka ###
Moderate Linkage
Strong Linkage
Level I Remember UG
Level II Understand UG
Level III Apply UG/PG
Level IV Analyze PG
Level V Evaluate PG
Level VI Create PG
oeee.asu.edu/blooms-taxonomy
Name of the Faculty: Mayuri Bhandari Semester
Dynamic typing,
Unit 1 - Overview of
3 Features of JavaScript lightweight, event-driven
JavaScript
nature.
JS engines, client-side
Unit 1 - Overview of
4 JavaScript Execution execution, embedding in
JavaScript
HTML.
Unit 1 - Overview of
12 Control Structures (loops) loop constructs.
JavaScript
Understanding recursion,
23 Unit 2- Functions Recursive Functions base cases, and call
stacks.
Encapsulation using
closures and
Unit 3 - Objects, Array and Encapsulation and
31 demonstrating
Strings Polymorphism
polymorphism in
JavaScript.
Unit 3 - Objects, Array and JavaScript Object Notation JSON syntax, parsing,
32
Strings (JSON) and stringifying objects.
String handling,
Unit 3 - Objects, Array and including slicing,
34 String - Creation, Methods
Strings concatenation, and
regular expressions.
Working with
Unit 3 - Objects, Array and JavaScript's Date object
35 Date - Methods, Properties
Strings and its properties and
methods.
Utilizing JavaScript's
Unit 3 - Objects, Array and Math - Methods, Math object for
36
Strings Properties mathematical
computations.
Changing element
Unit 4 - DOM and Event
39 Modifying DOM Elements content, attributes, and
Handling
styles dynamically.
Understanding how
Unit 4 - DOM and Event
42 Event Bubbling events propagate in
Handling
bubbling phase.
Understanding event
Unit 4 - DOM and Event
43 Event Capturing propagation in capturing
Handling
phase.
Handling keyboard
Unit 4 - DOM and Event DOM Events – Keyboard
45 events like keydown,
Handling events
keyup, and keypress
Overview of Vue.js:
Unit 5 -JavaScript ES6+
Introduction to JavaScript features, use cases, and
55 Features and Modern
Frameworks (Vue.js) simple comparison with
Frameworks
React.
Unit 5 -JavaScript ES6+ Components in React:
Basic Concepts of React
56 Features and Modern functional and class-
(Components)
Frameworks based.
II Course title
Understand what
JavaScript is and its Class Discussion
purpose.
Understand how to
Direct Instruction with
define and call functions
Examples
in JS.
Apply function
declarations to solve Practice-Driven Learning
problems.
Differentiate between
function declarations and Collaborative coding task
expressions.
Implement arrow
Problem-Based Learning
functions effectively.
Understand use cases of
Code Challenges
anonymous functions.
Understand various
Live Coding with
methods of object
Examples
creation in JavaScript.
Use constructors
effectively for object Guided Problem Solving
creation.
Explain and apply
Diagram-Based
inheritance using
Explanation
prototypes.
Manipulate strings
effectively using Code Practice
JavaScript methods.
Implement keyboard
event handlers in Experimentation Tasks
JavaScript.
Manipulate form
elements and data Problem-Based Learning
dynamically.
Validate form inputs to
improve user experience Problem-Based Learning
and security.
Understand
asynchronous
programming and handle Coding Practice
async operations
effectively.
Organize and reuse
JavaScript code using Interactive Examples
modules.
Use import and export
effectively in JavaScript Interactive Examples
applications.
Handle runtime errors
using structured error Debugging Practice
handling techniques.
Introduction (10 mins): Interactive discussion on what JavaScript is and its real-world
applications.
Activity (30 mins): Students research and share examples of websites using JS.
Conclusion (10 mins): Summary and Q&A.
Lecture (15 mins): Explain arrow function syntax and differences from regular functions.
Hands-on (30 mins): Students rewrite existing functions using arrow syntax.
Conclusion (5 mins): Discuss arrow function limitations.
Practice Session (45 mins): Solve problems requiring function expressions and arrow
functions (e.g., array filtering, sorting).
Reflection (5 mins): Discuss simplicity and benefits of arrow functions.
Lecture (15 mins): Explain anonymous functions with examples.
Activity (25 mins): Students implement an anonymous function for event handling.
Conclusion (10 mins): Discuss advantages and potential drawbacks.
Lecture (20 mins): Explain recursion with examples (e.g., factorial, Fibonacci).
Activity (25 mins): Students write a recursive program.
Reflection (5 mins): Discuss risks of stack overflow and debugging recursive logic.
Lecture (20 mins): Explain the purpose and syntax of bind, call, and apply.
Activity (25 mins): Students rewrite a program using these methods to manipulate this
context.
Conclusion (5 mins): Discuss their use cases and pitfalls.
Lecture (20 mins): Explain JSON syntax and methods like JSON.parse() and
JSON.stringify().
Activity (25 mins): Students convert objects to JSON strings and parse them.
Conclusion (5 mins): Discuss real-world use cases like APIs.
Lecture (20 mins): Explain array creation and methods like push(), pop(), filter(), and
map().
Activity (25 mins): Students implement operations on multidimensional arrays.
Conclusion (5 mins): Reflect on array manipulations' efficiency.
Lecture (15 mins): Explain common string methods like slice(), concat(), and match().
Activity (30 mins): Students solve problems requiring string operations (e.g., reversing a
string, finding patterns).
Conclusion (5 mins): Discuss efficiency in string manipulations.
Lecture (20 mins): Demonstrate creating and formatting dates.
Activity (25 mins): Students create programs to calculate differences between dates or
format dates for reports.
Conclusion (5 mins): Discuss practical applications of the Date object in real-world
scenarios.
Lecture (15 mins): Explain methods like Math.floor(), Math.random(), and Math.pow().
Activity (30 mins): Students write programs for tasks like generating random numbers or
performing power calculations.
Conclusion (5 mins): Reflect on efficiency and accuracy in math operations.
Practice (40 mins): Students work on real-life error-handling tasks like validating form
inputs or file uploads.
Review (10 mins): Faculty discusses solutions and common challenges.
Life Skills
building/enhancement
Session Assessment Resources to be Shared
(Mention two
prominent ones)
Critical Thinking,
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide
Curiosity
Analytical Thinking,
https://www.youtube.com/watch?v=Q6bY3FvBxMk&pp=ygUvV
Practical Learning
Observation, Problem-
https://www.geeksforgeeks.org/introduction-to-javascript/
solving
https://www.youtube.com/watch?
Attention to Detail, v=0mRyEPd6DvQ&list=PLgks6nQ
Technical Proficiency q61D0lYJtYi9KZWwYGbnjxGnhx
&index=3
https://developer.mozilla.org/en-
Logical Reasoning,
US/docs/Web/JavaScript/Guide/
Problem-solving
Grammar_and_types
Analytical Thinking,
https://www.w3schools.com/js/js_datatypes.asp
Observation
Problem-solving, Logical
https://www.w3schools.com/js/js_operators.asp
Reasoning
Problem-solving, Logical
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide
Reasoning
Critical Thinking,
https://www.geeksforgeeks.org/control-statements-in-javascript/#
Persistence
Critical Thinking,
https://www.youtube.com/watch?v=s9wW2PpJsmQ&pp=ygUZS
Persistence
Debugging and
Logical Thinking,
identifying capturing https://developer.mozilla.org/en-US/docs/Learn_web_developme
Problem-solving
behavior.
Program demonstrating
Creativity, Problem-
form element https://developer.mozilla.org/en-US/docs/Web/API/HTMLForm
solving
manipulation.
Logical Thinking, Validation program with
https://www.youtube.com/watch?v=In0nB0ABaUk&pp=ygUjSm
Attention to Detail real-time feedback.
Submission of a Vue.js
Adaptability, Creativity https://www.youtube.com/watch?v=nhBVL41-_Cw&pp=ygUW
demo app.