js 基础知识

string 字符串
number 数字
boolean 布尔值
null
undefined
objecrt

转换字符串 toString();
String ();
转换为数字 Number();
parseInt();专门对付字符串的,如果不是字符串,则必须先转换为字符串在使用parseInt;或者parseFloat;
parseFloat();
转换为boolean();
boolean();

判断一个变量是不是对象非常简单。值类型的判断用typeof,引用类型的判断用 instanceof.

创建对象 var obj =new Obj(){
}
var 函数名=function(){} /匿名函数/
function 函数名(){} /函数*/
(function ( ){ })(); /立即执行函数/

创建一个构造函数,专门用来创建Person对象的
构造函数就是一个普通的函数,创建方式和普通的函数没有区别
不同的是构造函数习惯首字母大写

构造函数和普通函数的区别就是调用方式不同
普通函数直接调用,而构造函数需要new 关键字调用

function Person(name , age , gender){
				this.name =name;
				this.age=age;
				this.gender=gender;
				this.sayName=function(){
					console.log("name"+this.name)
				}
				
			}
			var per =new Person("李娜",23 ,"女");
			console.log(per);

property 原型对象
原型对象也是对象,所以他也有原型,当我们使用一个对象的属性或者方法时,先在自身中寻找,自身如果有,则直接使用。如果没有则在原型的对象中寻找,如果原型的对象中有则可以直接使用。如果没有则去原型中的原型中去寻找,直到找到Object对象中的原型。但是Object对象中的原型没有原型,如果在Object 的原型中没有找到,则返回undefined。

访问一个对象的属性时,先在基本属性中查找,如果没有,再沿着__proto__这条链向上找,这就是原型链。

cally() 和 apply() 这两个都是方法函数对象的方法,需要通过函数对象来调用;
call ()方法可以将实参在对象之后依次传递;
apply() 方法可以将实参封装到一个数组中在对象之后传递
使用call();和apply() 调用时this 就是指向那个对象;

语法:元素名.style.样式名=样式值
例如:box1.style.width=“200px”; 使用style只能读取到内联样式;

用来读取当前正在显示的样式 元素.currentStyle.样式名=样式值
如果当前元素没有设置该样式,则获取当前的样式值。这种方法只支持IE浏览器。
在其他的浏览器可以使用 getComputedStyle(获取样式的元素 ,可以传递一个为元素,一般都传null ) 来获取当前的样式。(只读不能设置)
该方法不支持IE8以下的浏览器。

兼容浏览器
event =window .event || event

变量提升

var a;
console.log(a); // undefined
a = "a";
var foo = () => {
    var a; // 全局变量会被局部作用域中的同名变量覆盖
    console.log(a); // undefined
    a = "a1";
}
foo();

函数提升


console.log(foo1); // [Function: foo1]
foo1(); // foo1
console.log(foo2); // undefined
foo2(); // TypeError: foo2 is not a function
function foo1 () {
	console.log("foo1");
};
var foo2 = function () {
	console.log("foo2");
};

闭包到底是什么?
理解一:闭包是嵌套的内部函数 注意:闭包存在于内部的嵌套函数中
理解二:包含被引用的对象(函数)函数的对象。
产生闭包的条件:
**.函数嵌套
**:内部函数引用外部函数的数据;

定时器真的是定时执行的吗啊?
不是

代码的分类:分为初始化代码和引擎代码

es6箭头函数
如果只有一个参数,()可以省。
如果只有一个return { }可以省。

结构赋值
1.左右两边必须一样
2.右边必须是个东西
3.声明和赋值不能分开,必须在一起

let [a, b,c]=[1,2,3];
let {a, b, c}={a:1,b:2,c:3};

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值