JS里定义变量的位置

JavaScript014

JS里定义变量的位置,第1张

一、js全局变量和局部变量

1、全局变量和它的作用域

全局变量是指在程序开头的说明部分定义和说明的量。它的作用域分为两种情况:

    1)在全局变量和局部变量不同名时,其作用域是整个程序。

    2)在全局变量和局部变量同名时,全局变量的作用域不包含同名局部变量的作用域。

2、局部变量和它的作用域

凡是在子程序内部使用的变量,必须在子程序中加入说明。这种在子程序内部说明的变量称为局部变量。局部变量的作用域是其所在的子程序。形式参数也只能在子程序中有效。因此也属于局部变量。局部变量的作用域分为两种情况:

    1)当外层过程序的局部变量名和嵌套过程中的局部变量不同名时,外层过程的局部变量作用域包含嵌套过琛。

    2)当外层过程的局部变量名和嵌套过程内的局部变量名同名时,外层局部变量名的作用域不包含此过程。

二、js定义变量需要注意以下内容:

1、Javascript的变量的scope是根据方法块来划分的(也就是说以function的一对大括号{ }来划分);切记,是function块,而for、while、if块并不是作用域的划分标准

2、Javascript在执行前会对整个脚本文件的声明部分做完整分析(包括局部变量),从而确定实变量的作用域

3、当全局变量跟局部变量重名时,局部变量的scope会覆盖掉全局变量的scope,当离开局部变量的scope后,又重回到全局变量的scope

三、js定义变量时,var和this的区别

1、var的规则是: 使用var声明变量就是内部变量, 否则就是先调用全局变量, 不管多少层函数

2、this的规则是: method函数里的this永远指向自身, 普通函数的this永远指向DOMWindow

附件为var和this区别的示例代码!

1、使用\xa0-

它是一个NO-BREAK SPACE char。

从UTF-8编码表和Unicode字符引用,可以写成如下:

var a = 'something' + '\xa0\xa0\xa0\xa0\xa0\xa0\xa0' + 'something'

2、使用 &nbsp

它是用于表示不间断空间的实体。它本质上是一个标准空间,主要区别在于浏览器不应该在它占用的点处中断(或换行)一行文本。

var a = 'something' + '&nbsp &nbsp &nbsp &nbsp &nbsp' + 'something'

3、HTML中使用的常见字符实体是不间断空格(&nbsp)。

请记住,浏览器将始终截断HTML页面中的空格。如果在文本中写入10个空格,浏览器将删除其中的9个空格。要为文字添加真实空格,你可以使用&nbsp 字符实体。

var a = 'something' + '&nbsp &nbsp &nbsp &nbsp &nbsp' + 'something'document.body.innerHTML = a

扩展资料

字符串主要用于编程,概念说明、函数解释、用法详述见正文,这里补充一点:字符串在存储上类似字符数组,所以它每一位的单个元素都是可以提取的。

如s=“abcdefghij”,则s[1]=“a”,s[10]="j",而字符串的零位正是它的长度,如s[0]=10(※上述功能Ansistring没有。),这可以给我们提供很多方便,如高精度运算时每一位都可以转化为数字存入数组。

参考资料

百度百科-字符串

++和--这是算数运算符。

比如 x=5 ,y=++x,y=6

比如 x=5 ,y=--x,y=4

+= 是赋值运算符。

比如  x+=y,相当于x=x+y

*=    比如  x*=y,相当于x=x*y

类似的符号:还有

1、除法 (/)

除法运算符的结果是操作数的商 ,左操作数是被除数,右操作数是除数。

2、求余 (%)

求余运算符返回第一个操作数对第二个操作数的模,即 var1 对 var2 取模,其中 var1 和 var2 是变量。取模功能就是 var1 除以 var2 的整型余数。

3、幂 (**)

幂运算符返回第一个操作数做底数,第二个操作数做指数的乘方。即, var1var2 ,其中 var1和 var2 是其两个操作数。幂运算符是右结合的。

4、一元负号 (-)

一元负号运算符位于操作数前面,并转换操作数的符号。

扩展资料

分类

C的运算符有以下几类:

注意:条件运算符是C语言中惟一一个三目(三元)运算符

参考资料来源:百度百科:运算符