JavaScript 常用属性

获取变量的数据类型 --- > 可以使用  typeof 来获取变量的数据类型

数字类型: 数字使用 number 定义,当一个定义的变量没有被赋值的时候跟数字类型的变量相加,得到的是一个NAN类型的

                     判断当前类型是不是数据类型 使用 isNan判断。

字符串类型:浏览器会帮助我们自动的把字符串类型转换成数字类型,这种方式叫做隐式转换,在相加的时候是不会进行类型转换                       的,只会在字符串拼接的时候,会进行数据类型的转换

进行类型的转换:

                  转换成字符串类型: .toString() 该方法在使用的时候,如果没有定义和为null 的时候,会报错

                                                         String(参数): 可以使用该方法,将参数传入,然后进行转换

                  转成数字类型:Number():该方法在转换的时候,如果开头是数字,只会转换开头的数字部分,如果开头的不是数字,则会报错

                 int 类型  : parseInt(): 只能转换数字的数据

                 浮点类型: parseFloat()

                 布尔类型 : Boolean()  进行数据的判断当前是否为真

Apply和call方法的区别:

               javaScript中的每一个function中都会有apply和call两个方法,两个方法唯一不同的是传递的参数不同,都可以改变当前this的指向,如果第一个参数不传,表示的则是window。引用:https://blog.csdn.net/qq_39201210/article/details/82685290

 
// 场景:当生产车间,需要用到别人的零件,
// 可以用call或apply将别人的函数拿过来为自己所用
 
// 如这是车座部件
function Sit(h,w){
	this.carHeight = h;
	this.carWidth = w;
}
// 车颜色
function Color(c){
	this.carColor = c;
}
// 车轮
function Wheel(size){
	this.size = size;
}
// 这是车间
function Car(name,h,w,c,size){
	// 自己的东西
	this.name = name;
	// 直接拿别人的部件来用
	Sit.call(this,h,w);//这里的this,就将原本Sit的this指向改为了Car本身
	Wheel.call(this,size);
	Color.call(this,c);
}
 
var car = new Car('我的车',100,100,'绿色','超大');
 
// 使用apply
function Car2(name,h,w,c,size){
	// 自己的东西
	this.name = name;
	
	// 直接拿别人的部件来用  apply传参必须是对象的形式 [] {}等
	Sit.apply(this,[h,w]);//这里的this,就将原本Sit的this指向改为了Car2本身
	Wheel.apply(this,[size]);
	Color.apply(this,[c]);
 
}
var car1 = new Car2('我的车',100,100,'绿色','超大');

如果在调用 apply和call的时候,第一个参数为null,则调用的方法中的this,代表的是window 

        Bind:

    Bind的使用跟上面的apply和call方法的使用是一样的,唯一不同的是bind是复制,将函数复制给变量,然后再进行调用,而apply和call是直接调用。

    Var f2 = f1.bind(null.10,20);

在调用的时候需要  :   f2();    --  直接变量调用

    而apply和call则是方法名称调用,不需要单独的调用

将函数当做参数进行传递:

      如果要将函数当做参数进行传递,在传递的时候,直接将函数的名称当做实体进行传递即可,不需要加 () 

Attr和propd的区别:

    两个方法的用途都是一致的,都是用于获取属性的数据,但是在使用的时候,Attr如果获取没有定义的属性,则会返回undifunt,在使用的时候如果获取的属性需要返回false和true的时候,用该方法获取属性则为不妥,所以需要使用到prop的方法进行获取,也就是说如果要操作的属性的Boolean类型的,则用prop方法操作。

沙箱:

    沙箱是一个模拟真实环境的虚拟环境,当虚拟环境消失之后,里面的所有的东西都会消失

浅拷贝:

       将一个对象中的属性和方法,拷贝到另一个对象的内存中

深拷贝:

      将一个对象的属性直接拷贝到当前对象中,为当前对象的属性在内存中开辟一块真实的地址将数据放在内存中,深拷贝基本上是用不到的

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值