찾다
웹 프론트엔드JS 튜토리얼배열 방법으로 JS 문자열 연결 성능 ​​문제 논란_javascript 기술 해결

1. 전통적으로 문자열 연결은 항상 js에서 성능이 가장 낮은 작업 중 하나였습니다.
var text="Hello";
text =" World!"
초기 브라우저는 이 작업을 최적화하지 않았습니다.
문자열은 변경할 수 없으므로 연결 결과를 저장하기 위해 중간 문자열이 생성된다는 의미입니다. 백그라운드에서 문자열을 자주 생성하고 삭제하면 성능이 매우 저하됩니다.
2. 개발자들은 이를 발견한 후 최적화를 위해 배열 객체를 사용했습니다.
var buffer=[],i=0;
buffer[i ]="Hello";//해당 인덱스 값을 통해 요소를 추가하는 것이 push 방식보다 빠릅니다.
buffer[i ] =" World !";
var text=buffer.join("");
초기 브라우저에서는 문자열 연결이 많은 경우 중간에 문자열을 생성하고 삭제하는 작업이 없었습니다. 추가 방법을 사용하는 것이 훨씬 빠른 것으로 입증되었습니다.
3. 요즘 브라우저 최적화로 인해 문자열 연결 상황이 바뀌었습니다.
Safari, Opera, Chrome, Firefox 및 IE8은 모두 더하기 연산자를 사용하여 더 나은 성능을 보여줍니다. 그러나 IE8 이전 버전은 최적화되지 않았기 때문에 배열 방식은 여전히 ​​작동합니다.
문자열 연결 시 브라우저 감지를 수행해야 한다는 의미는 아닙니다. 연결 방법을 결정할 때 고려해야 할 사항은 문자열의 크기와 개수입니다.
1) 문자열이 상대적으로 작고(2) 문자열의 수나 크기를 늘리면 IE7에서는 성능이 크게 저하됩니다.
3) 문자열 크기가 커질수록 Firefox의 덧셈 연산자와 배열 구성 기술 간의 성능 차이는 작아집니다.
4) 문자열 수가 증가할수록 Safari에서 덧셈 연산자와 배열 구성 기술 간의 성능 차이는 줄어들 것입니다.
5) 문자열의 수나 크기를 변경할 때 Chrome과 Opera의 더하기 연산자는 항상 선두를 유지해 왔습니다.
따라서 다양한 브라우저에서 일관되지 않은 성능으로 인해 실제 상황과 직면한 브라우저에 따라 선택되는 기술이 달라집니다.
대부분의 경우 추가 연산자가 선호됩니다. 사용자가 주로 IE6 또는 7을 사용하고 문자열 크기가 크거나 많으면 배열 기술이 가치가 있습니다.
성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
php怎么将16进制字符串转为数字php怎么将16进制字符串转为数字Oct 26, 2021 pm 06:36 PM

php将16进制字符串转为数字的方法:1、使用hexdec()函数,语法“hexdec(十六进制字符串)”;2、使用base_convert()函数,语法“bindec(十六进制字符串, 16, 10)”。

php怎么将字符串转换成小数php怎么将字符串转换成小数Mar 22, 2023 pm 03:22 PM

PHP 是一门功能强大的编程语言,广泛应用于 Web 开发领域。其中一个非常常见的情况是需要将字符串转换为小数。这在进行数据处理的时候非常有用。在本文中,我们将介绍如何在 PHP 中将字符串转换为小数。

golang怎么检测变量是否为字符串golang怎么检测变量是否为字符串Jan 06, 2023 pm 12:41 PM

检测变量是否为字符串的方法:1、利用​“%T”格式化标识,语法“fmt.Printf("variable count=%v is of type %T \n", count, count)”;2、利用reflect.TypeOf(),语法“reflect.TypeOf(变量)”;3、利用reflect.ValueOf().Kind()检测;4、使用类型断言,可以对类型进行分组。

php 字符串长度不一致怎么办php 字符串长度不一致怎么办Feb 07, 2023 am 09:58 AM

php字符串长度不一致的解决办法:1、通过mb_detect_encoding()函数查看字符串的编码方式;2、通过mb_strlen函数查看具体字符长度;3、使用正则表达式“preg_match_all('/[\x{4e00}-\x{9fff}]+/u', $str1, $matches);”剔除非中文字符即可。

go语言怎么删除字符串中的空格go语言怎么删除字符串中的空格Jan 17, 2023 pm 02:31 PM

删除方法:1、使用TrimSpace()函数去除字符串左右两边的空格,语法“strings.TrimSpace(str)”;2、使用Trim()函数去除字符串左右两边的空格,语法“strings.Trim(str, " ")”;3、使用Replace()函数去除字符串的全部空格,语法“strings.Replace(str, " ", "", -1)”。

php字符串函数学习:怎么去掉前面的字符php字符串函数学习:怎么去掉前面的字符Mar 20, 2023 pm 02:33 PM

在开发PHP应用程序时,有时我们需要去掉字符串前面的某些特定字符或者字符串。在这种情况下,我们需要使用一些PHP函数来实现这一目标。本文将介绍一些PHP函数,帮助您轻松地去掉字符串前面的字符或字符串。

php怎么将字符串转为布尔类型php怎么将字符串转为布尔类型Jul 01, 2021 pm 06:36 PM

转换方法:1、在转换变量前加上用括号括起来的目标类型“(bool)”或“(boolean)”;2、用boolval()函数,语法“boolval(字符串)”;3、用settype()函数,语法“settype(变量,"boolean")”。

php字符串部分乱码怎么办php字符串部分乱码怎么办Jan 20, 2023 am 10:18 AM

php字符串部分乱码的解决办法:1、使用“mb_substr(strip_tags($str),0,-1,'UTF-8');”截取字符串;2、使用“iconv("UTF-8","GB2312//IGNORE",$data)”转换字符集即可。

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

맨티스BT

맨티스BT

Mantis는 제품 결함 추적을 돕기 위해 설계된 배포하기 쉬운 웹 기반 결함 추적 도구입니다. PHP, MySQL 및 웹 서버가 필요합니다. 데모 및 호스팅 서비스를 확인해 보세요.

DVWA

DVWA

DVWA(Damn Vulnerable Web App)는 매우 취약한 PHP/MySQL 웹 애플리케이션입니다. 주요 목표는 보안 전문가가 법적 환경에서 자신의 기술과 도구를 테스트하고, 웹 개발자가 웹 응용 프로그램 보안 프로세스를 더 잘 이해할 수 있도록 돕고, 교사/학생이 교실 환경 웹 응용 프로그램에서 가르치고 배울 수 있도록 돕는 것입니다. 보안. DVWA의 목표는 다양한 난이도의 간단하고 간단한 인터페이스를 통해 가장 일반적인 웹 취약점 중 일부를 연습하는 것입니다. 이 소프트웨어는

SublimeText3 영어 버전

SublimeText3 영어 버전

권장 사항: Win 버전, 코드 프롬프트 지원!

Eclipse용 SAP NetWeaver 서버 어댑터

Eclipse용 SAP NetWeaver 서버 어댑터

Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

Dreamweaver Mac版

Dreamweaver Mac版

시각적 웹 개발 도구