요즘 avascript를 검토하고 있습니다. 이 훌륭한 js는 매우 강력한 사람이 열흘 만에 개발했기 때문에 학습하는 동안 항상 몇 가지 디자인 결함이 있을 수 있으므로 이러한 함정은 건너뛰도록 하겠습니다.
1. 연산자 == 및 ===
항등 연산자 ==
에 특히 주의하세요. JavaScript를 설계할 때 두 가지 비교 연산자가 있습니다. ==
。JavaScript在设计时,有两种比较运算符:
第一种是==
比较,它会自动转换数据类型再比较,很多时候,会得到非常诡异的结果;
第二种是===
比较,它不会自动转换数据类型,如果数据类型不一致,返回false
,如果一致,再比较。
由于JavaScript这个设计缺陷,不要使用==
比较,始终坚持使用===
比较。
2. NaN
NaN表示Not a Number,当无法计算结果时用NaN表示
NaN
这个特殊的Number与所有其他值都不相等,包括它自己
NaN === NaN; // false
唯一能判断NaN
的方法是通过isNaN()
函数:
isNaN(NaN); // true
3. null和undefined
null
表示一个“空”的值,它和0
以及空字符串''
不同,0
是一个数值,''
表示长度为0的字符串,而null
表示“空”。
在其他语言中,也有类似JavaScript的null
的表示,例如Java也用null
,Swift用nil
,Python用None
表示。但是,在JavaScript中,还有一个和null
类似的undefined
,它表示“未定义”。
JavaScript的设计者希望用null
表示一个空的值,而undefined
表示值未定义。事实证明,这并没有什么卵用,区分两者的意义不大。大多数情况下,我们都应该用null
。undefined
仅仅在判断函数参数是否传递的情况下有用
4. 数组
数组是一组按顺序排列的集合,集合的每个值称为元素。JavaScript的数组可以包括任意数据类型。例如:
[1, 2, 3.14, 'Hello', null, true];
初始化数组:
var array1 = new Array()
var array1 = []
var array1 = new Array(10)
5. 对象
JavaScript的对象是一组由键-值组成的无序集合
var person = { name: 'Bob', age: 20, tags: ['js', 'web', 'mobile'], city: 'Beijing', hasCar: true, zipcode: null };
JavaScript对象的键都是字符串类型,值可以是任意数据类型。上述person
对象一共定义了6个键值对,其中每个键又称为对象的属性,例如,person
的name
属性为'Bob'
,zipcode
属性为null
。
要获取一个对象的属性,我们用对象变量.属性名
==
비교로, 자동으로 데이터 유형을 변환한 다음 비교하는 경우가 많습니다.
두 번째 유형은 데이터 유형이 자동으로 변환되지 않는 ===
비교입니다. 데이터 유형이 일치하지 않으면 false
가 반환됩니다. 다시. JavaScript의 이러한 설계 결함으로 인해 ==
비교를 사용하지 않고 항상 ===
비교를 사용하세요.
2. NaN person.name; // 'Bob'
person.zipcode; // null
NaN
이 특수 숫자는 자신을 포함한 다른 모든 값과 동일하지 않습니다.
NaN
을 확인하는 유일한 방법은 를 통해서입니다. isNaN() 함수:
3. null 및 정의되지 않음null
은 0
및 null과 동일한 "빈" 값을 나타냅니다. 문자 문자열 ''
은 다름, 0
은 숫자 값, ''
는 길이가 0인 문자열을 나타내고 null code>는 "비어 있음"을 의미합니다.
null
과 유사한 표현이 있습니다. 예를 들어 Java에서는 null
을 사용하고 Swift에서는 nil
을 사용하며 Python에서는 None
을 사용합니다. 그러나 JavaScript에는 "정의되지 않음"을 의미하는 null
과 유사한 undefine
도 있습니다. 🎜🎜JavaScript 설계자는 빈 값을 나타내기 위해 null
을 사용하고 정의되지 않은 값을 나타내기 위해 undefine
을 사용하기를 희망합니다. 이것이 아무 소용이 없다는 것이 사실로 입증되었으며, 둘 사이의 차이는 별 의미가 없습니다. 대부분의 경우 null
을 사용해야 합니다. 정의되지 않음
은 함수 매개변수가 전달되는지 확인할 때만 유용합니다🎜🎜 4. 배열🎜🎜배열은 순서대로 배열된 집합이며, 집합의 각 값을 요소라고 합니다. JavaScript 배열에는 모든 데이터 유형이 포함될 수 있습니다. 예: 🎜rrreee🎜배열 초기화: 🎜🎜var array1 = new Array()🎜🎜var array1 = []🎜🎜var array1 = new Array(10) 🎜🎜5 개체 🎜🎜JavaScript 개체는 키 집합입니다. - 정렬되지 않은 값 모음 🎜rrreee🎜 JavaScript 개체의 키는 모두 문자열 유형이며 값은 모든 데이터 유형이 될 수 있습니다. 위의 person
객체는 총 6개의 키-값 쌍을 정의하며, 각 쌍은 객체의 속성이라고도 합니다. 예를 들어 의 <code>name
속성은 다음과 같습니다. 사람은 'Bob'
이고 우편번호
속성은 null
입니다. 🎜🎜객체의 속성을 얻으려면 객체 변수.속성 이름
을 사용합니다. 🎜rrreee🎜 관련 기사: 🎜🎜JavaScript 사용 시 주의할 점과 몇 가지 기본 구문_기본 지식🎜 🎜🎜🎜 웹 프론트엔드 디자인에서 주의해야 할 문제🎜🎜🎜관련 영상: 🎜🎜🎜JavaScript 디자인 패턴 영상 튜토리얼🎜🎜위 내용은 자바스크립트가 주의해야 할 디자인들 (일부 정리)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

去掉重复并排序的方法:1、使用“Array.from(new Set(arr))”或者“[…new Set(arr)]”语句,去掉数组中的重复元素,返回去重后的新数组;2、利用sort()对去重数组进行排序,语法“去重数组.sort()”。

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于Symbol类型、隐藏属性及全局注册表的相关问题,包括了Symbol类型的描述、Symbol不会隐式转字符串等问题,下面一起来看一下,希望对大家有帮助。

怎么制作文字轮播与图片轮播?大家第一想到的是不是利用js,其实利用纯CSS也能实现文字轮播与图片轮播,下面来看看实现方法,希望对大家有所帮助!

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于对象的构造函数和new操作符,构造函数是所有对象的成员方法中,最早被调用的那个,下面一起来看一下吧,希望对大家有帮助。

方法:1、利用“点击元素对象.unbind("click");”方法,该方法可以移除被选元素的事件处理程序;2、利用“点击元素对象.off("click");”方法,该方法可以移除通过on()方法添加的事件处理程序。

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于面向对象的相关问题,包括了属性描述符、数据描述符、存取描述符等等内容,下面一起来看一下,希望对大家有帮助。

foreach不是es6的方法。foreach是es3中一个遍历数组的方法,可以调用数组的每个元素,并将元素传给回调函数进行处理,语法“array.forEach(function(当前元素,索引,数组){...})”;该方法不处理空数组。

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于BOM操作的相关问题,包括了window对象的常见事件、JavaScript执行机制等等相关内容,下面一起来看一下,希望对大家有帮助。


핫 AI 도구

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

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

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

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

인기 기사

뜨거운 도구

mPDF
mPDF는 UTF-8로 인코딩된 HTML에서 PDF 파일을 생성할 수 있는 PHP 라이브러리입니다. 원저자인 Ian Back은 자신의 웹 사이트에서 "즉시" PDF 파일을 출력하고 다양한 언어를 처리하기 위해 mPDF를 작성했습니다. HTML2FPDF와 같은 원본 스크립트보다 유니코드 글꼴을 사용할 때 속도가 느리고 더 큰 파일을 생성하지만 CSS 스타일 등을 지원하고 많은 개선 사항이 있습니다. RTL(아랍어, 히브리어), CJK(중국어, 일본어, 한국어)를 포함한 거의 모든 언어를 지원합니다. 중첩된 블록 수준 요소(예: P, DIV)를 지원합니다.

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

Dreamweaver Mac版
시각적 웹 개발 도구

에디트플러스 중국어 크랙 버전
작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

안전한 시험 브라우저
안전한 시험 브라우저는 온라인 시험을 안전하게 치르기 위한 보안 브라우저 환경입니다. 이 소프트웨어는 모든 컴퓨터를 안전한 워크스테이션으로 바꿔줍니다. 이는 모든 유틸리티에 대한 액세스를 제어하고 학생들이 승인되지 않은 리소스를 사용하는 것을 방지합니다.
