3 回答
TA贡献1797条经验 获得超4个赞
我也在这看了半天没弄明白
现在大概懂了
function isArray(myArray) {
return myArray.constructor.toString().indexOf("Array") > -1;
}
fruits传到myArray
在这个函数里myArray.constructor.toString()的结果就是
function Array() { [native code] }
indexof(Array)如果在function Array() { [native code] }中存在就会返回一个正数,大于-1;
如果在function Array() { [native code] }中不存在那么会返回-1,-1不大于-1所以返回false
TA贡献1796条经验 获得超10个赞
myArray.constructor.toString() 是字符串function Array() { [native code] },
function Array() { [native code] }中Array在function这8个字母后面,从0(f为0)编号,一直到7,空格算1个,所以Array从第9个字符开始出现,所以 myArray.constructor.toString().indexOf("Array") 输出数字为9。你可以尝试把 myArray.constructor.toString().indexOf("function") >-1或者 myArray.constructor.toString().indexOf("function") >0 尝试一下,或者把Array换成native试试
TA贡献1824条经验 获得超5个赞
在本例中,我们将在 "Hello world!" 字符串内进行不同的检索:
<script type="text/javascript">
var str="Hello world!"
document.write(str.indexOf("Hello") + "<br />")
document.write(str.indexOf("World") + "<br />")
document.write(str.indexOf("world"))
</script>
以上代码的输出:
0
-1
6
添加回答
举报