//
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>窗口1</title>
</head>
<body>
<a href="newWindow.html">点击一下,跳转到窗口2</a>
<script>
/*
name属性:该属性时window对象的一个属性,默认值为空字符串,该属性可以用来在不同窗口间进行数据的传递
*/
console.log(window.name);
</script>
</body>
</html>
//
//
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
/*
screenX:获取浏览器窗口距离屏幕左侧的距离
screenY:获取浏览器窗口距离屏幕顶端的距离
*/
console.log(window.screenX, window.screenY)
</script>
</body>
</html>
//
//
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
// var ul = document.createElement('ul');
// document.body.appendChild(ul);
// for (var i=1; i<=1000; i++) {
// var li = document.createElement('li');
// li.innerHTML = `我是第${i}个li`;
// ul.appendChild(li);
// }
var ul = document.createElement('ul');
var flag = document.createDocumentFragment();//创建文档碎片
for(var i=1; i<=100; i++){
var li = document.createElement('li')
var liText = document.createTextNode(i);
li.appendChild(liText);
flag.appendChild(li);
}
ul.appendChild(flag);
document.body.appendChild(ul);
</script>
</body>
</html>
//
//
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
/*
call、apply:这两个方法的作用是一样的,都是用来扩展函数的作用域范围
1.call的格式:函数.call(借用者,参数1,参数2,参数3...);
2.apply的格式:函数.apply(借用者,[参数1,参数2,参数3...]);
3.说明:call和apply方法时函数对象的两个方法,函数对象包含了call和apply方法,另外还要注意利用这两个方法来扩展函数的作用域时,借用过来的函数不再需要手动调用。在借用过来的那一刻该方法已经被执行了
*/
var obj1 = {
name: 'Tom',
age: 10,
speak: function() {
// console.log('hellowold');
console.log(this);
},
add: function(num1, num2) {
console.log(num1 + num2);
}
};
// console.log(obj1.name);
// console.log(obj1.age);
// obj1.speak();
// obj1.add(10, 20);
var obj2 = {
name: 'Jack',
age: 11,
};
// obj1.speak.call(obj2);
// obj1.add.call(obj2, 100, 200);
// obj1.speak.apply(obj2);
// obj1.add.apply(obj2, [1000, 2000]);
// function fn() {
// }
// console.log(fn.apply)
// var res = obj1.speak.bind(obj2);
// var res = obj1.add.bind(obj2);
// res(100, 200);
// obj1.speak();
var res = obj1.speak.bind(obj2);
res();
</script>
</body>
</html>
//
///
//