js基础知识点归纳

js基础知识点归纳

一、数值:整数和小数(比如1和3.14)

1.数值范围: 21024~2-1023

2.数值表示法:
-字面形式
-科学计数法:科学计数法允许字母e或E的后面,跟着一个整数,表示这个数值的指数部分。

3.数值的进制:
-十进制:没有前导0的数值。
-八进制:有前缀0o或0O的数值,或者有前导0、且只用到0-7的八个阿拉伯数字的数值。
-十六进制:有前缀0x或0X的数值。
-二进制:有前缀0b或0B的数值。

4.特殊数值:
-NaN:表示“非数字”(Not a Number),主要出现在将字符串解析成数字出错的场合。
-Infinity:表示“无穷”。

5.方法:
-parseInt():用于将字符串转为整数或以第二个参数为被解析的值的进制,返回该值对应的十进制数。。
-parseFloat():方法用于将一个字符串转为浮点数。
-isNaN():用来判断一个值是否为NaN。
-isFinite():返回一个布尔值,表示某个值是否为正常的数值。

二、字符串(string):文本(比如Hello World)。

1.直接对字符串使用方括号运算符(位置编号从0开始)。

var s = 'hello';
s[0] // "h"
s[1] // "e"
s[4] // "o"

// 直接对字符串使用方括号运算符
'hello'[1] // "e"

2.length属性返回字符串的长度

var s = 'hello';
s.length // 5

三、布尔值(boolean)

表示真伪的两个特殊值,即true(真)和false(假)

四、undefined

表示“未定义”或不存在,即由于目前没有定义,所以此处暂时没有任何值

五、null

表示空值,即此处的值为空。

六、对象(object):各种值组成的集合。

分为:狭义的对象(object)、数组(array)、函数(function)

狭义的对象
1、生成方法

var obj = {
  foo: 'Hello',
  bar: 'World'
};

2、对象的引用
如果不同的变量名指向同一个对象,那么它们都是这个对象的引用,也就是说指向同一个内存地址。修改其中一个变量,会影响到其他所有变量。

var o1 = {};
var o2 = o1;

o1.a = 1;
o2.a // 1

o2.b = 2;
o1.b // 2

3.属性的读取
读取对象的属性,有两种方法,一种是使用点运算符,还有一种是使用方括号运算符。

var obj = {
  p: 'Hello World'
};

obj.p // "Hello World"
obj['p'] // "Hello World"

4.属性的赋值

var obj = {};

obj.foo = 'Hello';
obj['bar'] = 'World';

上面代码中,分别使用点运算符和方括号运算符,对属性赋值。

函数
1.声明函数的三种方法:
(1)function 命令

function print(s) {
  console.log(s);
}

(2)函数表达式

var print = function(s) {
  console.log(s);
};

(3)Function 构造函数,因不常用,不举例说明。

2.递归
函数可以调用自身

function fib(num) {
  if (num === 0) return 0;
  if (num === 1) return 1;
  return fib(num - 2) + fib(num - 1);
}

fib(6) // 8

3.闭包
(1)闭包举例:

function f1() {
  var n = 999;
  function f2() {
    console.log(n);
  }
  return f2;
}

var result = f1();
result(); // 999

闭包就是函数f2,即能够读取其他函数内部变量的函数。由于在 JavaScript 语言中,只有函数内部的子函数才能读取内部变量,因此可以把闭包简单理解成“定义在一个函数内部的函数”。闭包最大的特点,就是它可以“记住”诞生的环境,比如f2记住了它诞生的环境f1,所以从f2可以得到f1的内部变量。在本质上,闭包就是将函数内部和函数外部连接起来的一座桥梁。

(2)作用:一是可以读取函数内部的变量,二是让这些变量始终保持在内存中,即闭包可以使得它诞生环境一直存在。

数组:
1.定义

var arr = ['a', 'b', 'c'];

2.length 属性
返回数组的成员数量。

['a', 'b', 'c'].length // 3

length属性可写

var arr = [ 'a', 'b', 'c' ];
arr.length // 3

arr.length = 2;
arr // ["a", "b"]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值