博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
js备忘录3
阅读量:4614 次
发布时间:2019-06-09

本文共 912 字,大约阅读时间需要 3 分钟。

JavaScript也有类型转换

 

js中的获取指定位数的方法

 

+和-的转换方向不同

在JavaScript中首先给变量赋值数字,然后再给变量赋值字符串是合法的

这点和Java有些区别

 

在函数体内声明变量,如果变量和全局变量的名字相同则会被覆盖

在使用局部变量的时候一定要var 不然会修改了全局变量的值

因为考虑到函数嵌套的情况

 

*****注意这句话,JavaScript是没有块级作用域的,只有函数作用域,看到这句话的时候并没有什么感觉,但是看了例子后:

在for循环后k的值竟然还是可以输出的,原因是:

所有的变量声明都会提前,但仅仅是声明,并没有赋值:

 

因为在函数内声明了变量,作用域提前了,覆盖了全局变量,但是只是变量声明提前了,并没有赋值,所以是undefined

这段话的意思是,在有块级作用域的编程语言如java中,尽量将变量的声明和变量的使用贴近,

但是在javaScript中这种方法不是太好,应该将变量的声明尽量放在函数体的头部吧,可以清晰反映真实的作用域

 

 

JavaScript全局变量是全局对象的属性

 

局部变量可以看做是函数调用某个对象的属性

ES5称为上下文对象,常称为局部对象

 

当定义一个函数的时候,实际上是 保存一个作用域链,

当调用这个函数的时候,它会创建一个新的对象存储他的局部变量,并将新建的对象 保存到该作用域的链上

这段话其实不太理解P59页

 

in 运算符的使用,在对象中是判断有没有key和一些对象的方法,不能判断value

在数组中也是只能判断数组的索引,不能判断值

原型链的作用

 

函数的标准形式是

function aaa(){

 

}

就算里面只有一条语句也是要写花括号的

函数的定义最好在顶层,不能再if和while语句中

在声明函数的时候和声明变量有类似的地方,但是函数在声明的时候函数中所有的东西都会提前,

 包括函数里面变量的赋值也会跟着提前,所以可以再函数声明之前就调用函数,也就是说,

不需要先定义函数再调用,函数的声明可以放在调用的后面,因为函数被隐式地提前到了头部

 

转载于:https://www.cnblogs.com/Baronboy/p/7770661.html

你可能感兴趣的文章
在oracle官网上,找到我们所需版本的jdk
查看>>
ie background repeat 出现空白
查看>>
iOS -Swift 3.0 -UILabel属性大全
查看>>
iOS开发UI篇—UITabBarController简单介绍
查看>>
Android应用程序的安装位置
查看>>
G - SDOI
查看>>
[LeetCode]Reverse Linked List
查看>>
HDU5807 Keep In Touch (BestCoder Round #86 D ) 分布式dp
查看>>
医保接口实现的基本流程
查看>>
pb数据窗口下拉数据窗口列的排序(翻译)
查看>>
Asp.net的__EVENTARGUMENT __EVENTTARGET一些参考网址
查看>>
2019春季第十二周作业
查看>>
Windows10无法打开NVIDA控制面板
查看>>
已经一周没有开锅了
查看>>
Ruby基础笔记
查看>>
oc38--类工厂方法在继承中
查看>>
oc75--不可变字典NSDictionary
查看>>
MySql安装与使用图文教程
查看>>
vue 数据传递的方法
查看>>
MFC 导入EXCEL到数据库
查看>>