JavaScript 常用属性

淩亂°似流年 2022-03-26 04:16 364阅读 0赞

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

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

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

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

进行类型的转换:

  1. ** 转换成字符串类型:** .toString() 该方法在使用的时候,如果没有定义和为null 的时候,会报错
  2. String(参数): 可以使用该方法,将参数传入,然后进行转换
  3. **转成数字类型:**Number():该方法在转换的时候,如果开头是数字,只会转换开头的数字部分,如果开头的不是数字,则会报错
  4. ** int 类型 :** parseInt(): 只能转换数字的数据
  5. ** 浮点类型:** parseFloat()
  6. **布尔类型 :** Boolean() 进行数据的判断当前是否为真

Apply和call方法的区别:

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

  1. // 场景:当生产车间,需要用到别人的零件,
  2. // 可以用call或apply将别人的函数拿过来为自己所用
  3. // 如这是车座部件
  4. function Sit(h,w){
  5. this.carHeight = h;
  6. this.carWidth = w;
  7. }
  8. // 车颜色
  9. function Color(c){
  10. this.carColor = c;
  11. }
  12. // 车轮
  13. function Wheel(size){
  14. this.size = size;
  15. }
  16. // 这是车间
  17. function Car(name,h,w,c,size){
  18. // 自己的东西
  19. this.name = name;
  20. // 直接拿别人的部件来用
  21. Sit.call(this,h,w);//这里的this,就将原本Sit的this指向改为了Car本身
  22. Wheel.call(this,size);
  23. Color.call(this,c);
  24. }
  25. var car = new Car('我的车',100,100,'绿色','超大');
  26. // 使用apply
  27. function Car2(name,h,w,c,size){
  28. // 自己的东西
  29. this.name = name;
  30. // 直接拿别人的部件来用 apply传参必须是对象的形式 [] {}等
  31. Sit.apply(this,[h,w]);//这里的this,就将原本Sit的this指向改为了Car2本身
  32. Wheel.apply(this,[size]);
  33. Color.apply(this,[c]);
  34. }
  35. var car1 = new Car2('我的车',100,100,'绿色','超大');

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

Bind:

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

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

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

  1. applycall则是方法名称调用,不需要单独的调用

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

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

Attr和propd的区别:

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

沙箱:

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

浅拷贝:

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

深拷贝:

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

发表评论

表情:
评论列表 (有 0 条评论,364人围观)

还没有评论,来说两句吧...

相关阅读

    相关 JavaScript-节点属性

    节点是构成DOM树的基本单元,HTML源码中的任何内容最终都会转变成DOM树中的一个节点。 元素转为元素节点;标签中的属性转为属性节点;标签中的文本转为文本节点;就算是注释,

    相关 Nunit属性

    1.TestFixture     标记包含测试的类。该类的特征:(1)必须是public,否则NUnit找不到它;(2)必须有缺省的构造函数,否则NUnit不会构造它;

    相关 JavaScript 属性

    获取变量的数据类型 \--- > 可以使用  typeof 来获取变量的数据类型 数字类型: 数字使用 number 定义,当一个定义的变量没有被赋值的时候跟数字类型的变量相