Scope of a variable in Insertion Sort code
I came across a working code for insertion sort which is as follows:
function insertionSort(array)
for (let i = 1; i < array.length; i++)
let curr = array[i];
for (var j = i-1; j >= 0 && array[j] > curr; j--)
array[j+1] = array[j];
array[j+1] = curr;
return array;
My question is: shouldn't the j in the line:
array[j+1] = curr;
be out of scope?
What am I missing here?
javascript scope
add a comment |
I came across a working code for insertion sort which is as follows:
function insertionSort(array)
for (let i = 1; i < array.length; i++)
let curr = array[i];
for (var j = i-1; j >= 0 && array[j] > curr; j--)
array[j+1] = array[j];
array[j+1] = curr;
return array;
My question is: shouldn't the j in the line:
array[j+1] = curr;
be out of scope?
What am I missing here?
javascript scope
It's always better to start a variable withconst
identifier and make itlet
as necessary.var
scope is function scope.
– Sid
Nov 14 '18 at 9:12
1
Possible duplicate of What is the scope of variables in JavaScript?
– amn
Nov 14 '18 at 9:28
add a comment |
I came across a working code for insertion sort which is as follows:
function insertionSort(array)
for (let i = 1; i < array.length; i++)
let curr = array[i];
for (var j = i-1; j >= 0 && array[j] > curr; j--)
array[j+1] = array[j];
array[j+1] = curr;
return array;
My question is: shouldn't the j in the line:
array[j+1] = curr;
be out of scope?
What am I missing here?
javascript scope
I came across a working code for insertion sort which is as follows:
function insertionSort(array)
for (let i = 1; i < array.length; i++)
let curr = array[i];
for (var j = i-1; j >= 0 && array[j] > curr; j--)
array[j+1] = array[j];
array[j+1] = curr;
return array;
My question is: shouldn't the j in the line:
array[j+1] = curr;
be out of scope?
What am I missing here?
javascript scope
javascript scope
edited Nov 14 '18 at 9:09
Ahmad
8,30043664
8,30043664
asked Nov 14 '18 at 9:06
Zeeshan MahmoodZeeshan Mahmood
184
184
It's always better to start a variable withconst
identifier and make itlet
as necessary.var
scope is function scope.
– Sid
Nov 14 '18 at 9:12
1
Possible duplicate of What is the scope of variables in JavaScript?
– amn
Nov 14 '18 at 9:28
add a comment |
It's always better to start a variable withconst
identifier and make itlet
as necessary.var
scope is function scope.
– Sid
Nov 14 '18 at 9:12
1
Possible duplicate of What is the scope of variables in JavaScript?
– amn
Nov 14 '18 at 9:28
It's always better to start a variable with
const
identifier and make it let
as necessary. var
scope is function scope.– Sid
Nov 14 '18 at 9:12
It's always better to start a variable with
const
identifier and make it let
as necessary. var
scope is function scope.– Sid
Nov 14 '18 at 9:12
1
1
Possible duplicate of What is the scope of variables in JavaScript?
– amn
Nov 14 '18 at 9:28
Possible duplicate of What is the scope of variables in JavaScript?
– amn
Nov 14 '18 at 9:28
add a comment |
1 Answer
1
active
oldest
votes
Declaring javascript variables using var
makes the scope of the variable be the bounds of the entire function it is declared inside.
Opposed to let
, which restricts the scope to the block it is defined inside.
So, no. It will not be out of scope.
add a comment |
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53296455%2fscope-of-a-variable-in-insertion-sort-code%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
Declaring javascript variables using var
makes the scope of the variable be the bounds of the entire function it is declared inside.
Opposed to let
, which restricts the scope to the block it is defined inside.
So, no. It will not be out of scope.
add a comment |
Declaring javascript variables using var
makes the scope of the variable be the bounds of the entire function it is declared inside.
Opposed to let
, which restricts the scope to the block it is defined inside.
So, no. It will not be out of scope.
add a comment |
Declaring javascript variables using var
makes the scope of the variable be the bounds of the entire function it is declared inside.
Opposed to let
, which restricts the scope to the block it is defined inside.
So, no. It will not be out of scope.
Declaring javascript variables using var
makes the scope of the variable be the bounds of the entire function it is declared inside.
Opposed to let
, which restricts the scope to the block it is defined inside.
So, no. It will not be out of scope.
answered Nov 14 '18 at 9:11
AhmadAhmad
8,30043664
8,30043664
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53296455%2fscope-of-a-variable-in-insertion-sort-code%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
It's always better to start a variable with
const
identifier and make itlet
as necessary.var
scope is function scope.– Sid
Nov 14 '18 at 9:12
1
Possible duplicate of What is the scope of variables in JavaScript?
– amn
Nov 14 '18 at 9:28