
获得徽章 0
赞了这篇文章
赞了这篇文章
赞了这篇文章
赞了这篇文章
赞了这篇沸点
赞了这篇沸点
还有一个关于数组Indexof方法的注意点
var people={'name':'test'};
var aaa=[{'name':'test'}];
var bbb=[people]
console.log(aaa.indexOf(people))
//-1
console.log(bbb.indexOf(people));
//0
var people={'name':'test'};
var aaa=[{'name':'test'}];
var bbb=[people]
console.log(aaa.indexOf(people))
//-1
console.log(bbb.indexOf(people));
//0
展开
评论
1
赞了这篇沸点
使用new操作符创建的引用类型在执行流离开之前都一直保存在内存中,而自动创建的基本包装类型的对象,则只存在一行代码的执行瞬间,然后会被立即销毁。这意味着我们不能在运行时为基本类型添加属性和方法。
var s1=new String("some string");
s1.color="red"
alert(s1.color)//red
var s2="some string";
s2.color="red"
alert(s2.color)//undefined
var s1=new String("some string");
s1.color="red"
alert(s1.color)//red
var s2="some string";
s2.color="red"
alert(s2.color)//undefined
展开
1
2
赞了这篇沸点
所有函数(funtion)的_proto_都是Function.prototype
包括对象的构造函数Object()
所有对象(object)的_proto_最终都是Object.prototype
包括Function.prototype
最终一切归于虚无
即Object.prototype._proto_是null
包括对象的构造函数Object()
所有对象(object)的_proto_最终都是Object.prototype
包括Function.prototype
最终一切归于虚无
即Object.prototype._proto_是null
展开
8
6
赞了这篇沸点
赞了这篇沸点
赞了这篇沸点
你不知道JavaScript读书思考:
数组的可变更方法无法再字符串上使用的原理
字符串虽说是类数组的数据类型
但是每个属性都是不可配置和更改的
当字符串尝试用可变更方法去修改时候
Array.prototype.call('字符串')
//Uncaught TypeError: Cannot assign to read only property '0' of object '[object String]
当数组方法为不改变元素组的方法的时候,会创建新数组,而不会更改原数组,不会涉及到对原数组的更改操作,所以可以在字符串中使用
当数组方法为改变原数组的方法时候,就会涉及到对原字符串的修改,所以会报错
数组的可变更方法无法再字符串上使用的原理
字符串虽说是类数组的数据类型
但是每个属性都是不可配置和更改的
当字符串尝试用可变更方法去修改时候
Array.prototype.call('字符串')
//Uncaught TypeError: Cannot assign to read only property '0' of object '[object String]
当数组方法为不改变元素组的方法的时候,会创建新数组,而不会更改原数组,不会涉及到对原数组的更改操作,所以可以在字符串中使用
当数组方法为改变原数组的方法时候,就会涉及到对原字符串的修改,所以会报错
展开
评论
1
赞了这篇沸点
赞了这篇沸点