js学习

_ _ proto _ _ 属性总结

​ (1)首先,我们需要牢记两点:①__proto__constructor属性是对象所独有的;② prototype属性是函数所独有的。但是由于JS中函数也是一种对象,所以函数也拥有__proto__constructor属性。

​ (2)__proto__属性的作用就是当访问一个对象的属性时,如果该对象内部不存在这个属性,那么就会去它的__proto__属性所指向的那个对象(父对象)里找,一直找,直到__proto__属性的终点null,再往上找就相当于在null上取值,会报错。通过__proto__属性将对象连接起来的这条链路即我们所谓的原型链

​ (3)prototype属性的作用就是让该函数所实例化的对象们都可以找到公用的属性和方法,即f1.__proto__ === Foo.prototype

​ (4)constructor`属性的含义就是指向该对象的构造函数,所有函数(此时看成对象了)最终的构造函数都指向Function

null和undefined区别

(1)null和undefined的类型不同

console.log(typeof(undefined)); //undefined

console.log(typeof(null)); //object

(2)转换为原始类型的方式不同

null和undefined之间的主要区别在于它们被转换为原始类型的方式。在null上执行算术转换时,确定的值为0可以使用以下代码片段验证此转换。

var v1= 5+ null;

console.log(v1)

输出结果为5。

但是undefined不执行任何此类转换,如果将undefined添加到数字中得出的结果将为NaN

var v2= 5+ undefined;

console.log(v2)

输出的结果为NaN

JavaScript中的undefined

undefined是JavaScript在运行时创建的全局变量,在下列情况之一中将此全局变量分配给对象

1、已声明但未初始化或定义的对象

2、不存在的数组索引或对象属性

3、未提供的功能参数

4、必须但不返回值的函数的返回值

JavaScript indexOf() 方法

定义和用法

indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。

语法

stringObject.indexOf(searchvalue,fromindex)
参数 描述
searchvalue 必需。规定需检索的字符串值。
fromindex 可选的整数参数。规定在字符串中开始检索的位置。它的合法取值是 0 到 stringObject.length - 1。如省略该参数,则将从字符串的首字符开始检索。
posted @ 2020-12-04 10:37  TheWings  阅读(43)  评论(0编辑  收藏  举报