date: 2019-08-01 09:07:55

终于开始复习JS了,哈哈,最早开始的时候JS学到一半没学完,这次一定要肝完

注释

javascript的注释和C语言的注释相同
//这是一个注释

/*这是一段注释
    没错,就是一段*/  

数据类型

JS提供七种不同的数据类型

  • undefined
  • null
  • boolean
  • string
  • symbol
  • number
  • object

当你对一个值为undefined的变量进行运算操作时,算出的结果将会是NaN
当用一个没有定义的变量来做字符串连接操作时,他会如实的输出undefined

驼峰命名法

变量名的第一个单词的首写字母小写,后面的单词的第一个字母大写

取余符号%

使用%运算符来对一个数进行取余
example: 5 % 2 = 1

在字符串中使用单引号和双引号
可以使用转义字符串
如要使用单引号,在前面加上反斜杠\'
双引号同理 \"
但是如果字符串内容中的符号与字符串起始终止所修饰的符号不同,可以不用
比如字符串用双引号表示,内容包含单引号,可以不用转义

在JS中,字符串的值是不可变的,这意味着一旦字符串被创建就不能被改变
但是可以通过重新赋值的形式来整体改变字符串

var Str1="3erf";  
Str1="34tc";  

仍然是可以的

JS中的数组用法

可以用数组名.push()来往数组中添加内容
可以使用数组名.pop()来移除数组中的最后一条
使用数组名.shift()来移除数组中的第一项
同时也可以使用数组名.unshift()来在数组头部添加元素

使用函数console.log()来往开发控制台上打印内容

一个程序中可能有相同名称的局部变量和全局变量,在这种情况下
局部变量将会优先于全局变量

严格相等运算符 ===

与==不同的是,它会同时比较元素的值和数据类型
因此如果比较的两个对象类型不同,那就直接返回false了

严格不相等运算符 !==

与严格相等运算符类似,不仅比较元素的值,还要看他们的数据类型

JS Objects

对象和数组相似,数组是通过索引来访问和修改数据,对象是通过属性来访问和修改数据的
example:

var Person{
 "first name": "Ken",
 "last name": "Smith",
 "weight": 170;
"pets":["cats","dogs"]
};  

可以用 . 即点操作符来操作对象属性
也可以用中括号[]
example(以上面的Person为例子):
Person["first name"]
中括号的另外一个作用是用变量来访问一个属性
example(来自freecodecamp):

var someProp = "propName";
var myObj = {
  propName: "Some Value"
}
myObj[someProp]; // "Some Value" 

最终myObj[someProp]返回的值是"Some value"

可以使用delete关键字来删除一个Object中特定的属性
example: delete ourDog.bark

使用hasOwnProperty(propname)函数来检查对象是否有该属性

Q.E.D.

知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议