New的实现原理

调用 new构造函数的过程发生四件事:

1.新生成对象:new关键字会首先创建一个空对象

2.链接到原型:将这个空对象的原型对象指向构造函数的原型属性,从而继承原型上的方法

3.绑定this: 将this指向这个空对象,执行构造函数中的代码,以获取私有属性

4.返回新对象:如果构造函数返回了一个对象res,就将该返回值res返回,如果返回值不是对象,就将创建的对象返回
function $new (){
	//1.创建一个空对象
	let obj={};
	let [constructor,...args]=[...arguments]
	//2.链接到原型:将这个空对象的原型对象指向构造函数的原型属性,从而继承原型上的方法
	obj.__proto__=constructor.prototype;
	//3.绑定this: 将this指向这个空对象,执行构造函数中的代码,以获取私有属性
	let res=constructor.apply(obj,args);
	//4.返回新对象:如果构造函数返回了一个对象res,就将该返回值res返回,如果返回值不是对象,就将创建的对象返回
	if(res&&(typeof (res)=='object'||typeof (res)=='function')){
		return res;
	}
	return obj;
}
 

function Person(){
	this.name='tom'
}

 $new(Person).name//tom

总结

new 操作符,可以创建一个原型对象的实例对象,并且继承了原型对象的属性、方法,故new不仅仅是实例化一个对象,同时也实现了 js 的继承。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
New Bing是微软推出的一种深度学习模型,用于搜索引擎结果的排序。和传统的搜索排序算法相比,New Bing采用了全新的排序方式,更加聚焦于用户的搜索意图和内容的相关性,以提高搜索结果的质量和准确度。 New Bing的实现原理主要包括以下几个方面: 1. 序列学习 New Bing采用了序列学习的方法,通过对输入的搜索词序列和对应的相关文档序列进行建模,来判断相关文档与搜索词的相关性。这个模型通过深度学习算法学习到了向量空间中的表示,通过比较相似度来决定排名。 2. 语义建模 New Bing的模型还采用了语义建模方法,将语义信息与向量表示结合起来,以更好地捕捉用户的意图。它采用了Word2Vec和词义分解等技术,将文档的主题和相关词汇的向量全部用作了匹配特征。这样可以更准确地判断两个文档的相关性,提升搜索结果的质量。 3. 网络架构 New Bing采用了深度神经网络模型,包括多个层次的神经元,其中各层神经元分别负责输入数据的不同特征的抽取和计算。该模型的复杂度很高,需要进行大量的计算和训练,但由于其具有良好的可扩展性和学习能力,因而能够在更多的数据和场景中发挥更好的效果。 总的来说,New Bing通过采用序列学习、语义建模和深度神经网络结构,实现了更为精准的搜索结果排序。该模型的推出不仅提升了搜索引擎的质量和效率,也为深度学习技术在其他领域的应用和发展打下了基础。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值