js 에서 cssText 성능 이 높 은 문 제 를 사실 로 증명 합 니 다.

3136 단어 cssText성능
4.567913.테스트 1,테스트 2 는 각각 1000 개의 div 를 페이지 에 추가 합 니 다.테스트 1 은 다음 세 줄 코드 를 사용 합 니 다
 
<!DOCTYPE HTML>
<html>
<head>
<meta charset="gbk">
<title> cssText </title>
</head>
<body>
<input type="button" value=" 1" onclick="test1()"/> ||
<input type="button" value=" 2" onclick="test2()"/>
<div id="container"></div>
<script>
var container = document.getElementById('container');
function appendElement(){
var ary = [];
container.innerHTML = '';
for(var i=0;i<=1000;i++){
var div = document.createElement('div');
ary.push(div);
container.appendChild(div);
}
return ary;
}
function test1(){
var ary = appendElement();
var d1 = new Date;
for(var j=0;j<ary.length;j++){
ary[j].style.width = '50px';
ary[j].style.height = '50px';
ary[j].style.backgroundColor = 'gold';
}
var d2 = new Date;
console.log(' :' + (d2-d1));
}
function test2(){
var ary = appendElement();
var d1 = new Date;
for(var j=0;j<ary.length;j++){
var sty = ary[j].style;
sty.cssText = 'width:50px;height:50px;background-color:red;';
}
var d2 = new Date;
console.log(' :' + (d2-d1));
}
</script>
</body>
</html>
테스트 2 는 cssText 한 줄 로 해결 합 니 다
 
ary[j].style.width = '50px';
ary[j].style.height = '50px';
ary[j].style.backgroundColor = 'gold';
테스트 1,테스트 2 는 각각 1000 개의 div 를 페이지 에 추가 합 니 다.
테스트 1 은 다음 세 줄 코드 를 사용 합 니 다
 
sty.cssText = 'width:50px;height:50px;background-color:red;';
테스트 2 는 cssText 한 줄 로 해결 합 니 다

ary[j].style.width = '50px';
ary[j].style.height = '50px';
ary[j].style.backgroundColor = 'gold';
테스트 코드:

여 기 를 클릭 하면 바로 테스트 할 수 있 습 니 다:

|||
//[Ctrl+A 선택:]

좋은 웹페이지 즐겨찾기