Maison interface Web js tutoriel Types de données des notes d'étude JavaScript

Types de données des notes d'étude JavaScript

May 16, 2016 pm 04:20 PM
javascript 数据类型

Les types de données Javascript sont très simples, comprenant uniquement les types de données indéfinis, nuls, chaînes, booléens, nombres et objets. Aujourd'hui, nous allons expliquer ces types de données un par un pour faciliter la compréhension et la mémoire de chacun.

1. Classification

Types de données de base : non défini, nul, chaîne, booléen, nombre

Complexe Type de données : objet

Les attributs de l'objet sont définis sous la forme de paires nom et valeur non ordonnées (nom : valeur)

2. Explication détaillée

1. undéfini : Le type undéfini n'a qu'une seule valeur : undéfini. Lorsqu'une variable est déclarée à l'aide de var mais non initialisée, la valeur de cette variable est indéfinie.

Une variable contenant. une valeur non définie est la même que les variables non définies sont différentes. L'exemple suivant peut illustrer :

var demo1;//声明但未初始化
alert(demo1);//undefined
alert(demo2);//报错,demo2 is not defined
Copier après la connexion

2 null : Le type nul n'a qu'une seule valeur : null. d'un point de vue, la valeur nulle Représente un pointeur d'objet nul.

Si la variable définie doit être utilisée pour contenir un objet dans le futur, il est préférable d'initialiser la variable à null plutôt qu'à une autre valeur . De cette façon, tant que la valeur nulle est directement détectée, vous pouvez savoir si la variable correspondante a enregistré une référence à un objet, par exemple :

 if(car != null)
    {
        //对car对象执行某些操作
    }
Copier après la connexion

En fait, la valeur non définie est dérivée de la valeur nulle, donc ECMA -262 spécifie que le test de leur égalité doit renvoyer vrai.

alert(undefined == null); //true
Copier après la connexion

Bien que nul et indéfini aient cette relation, leurs utilisations sont complètement différentes. En aucun cas il n'est nécessaire de définir explicitement la valeur d'une variable sur undefined, mais la même règle ne s'applique pas à null. En d’autres termes, tant qu’une variable destinée à contenir un objet ne contient pas réellement d’objet, vous devez explicitement laisser la variable contenir une valeur nulle. Cela reflète non seulement la convention de null en tant que pointeur d'objet nul, mais permet également de mieux distinguer null et indéfini.

3. Booléen :

Le type booléen a deux valeurs : vrai et faux. Ces deux valeurs​​ne sont pas la même chose que le numérique. valeurs, donc vrai Il n'est pas nécessairement égal à 1, et faux n'est pas nécessairement égal à 0.

Il convient de noter que la valeur littérale du type booléen est sensible à la casse, c'est-à-dire que True et False (et d'autres formes de casse mixte) ne sont pas des valeurs booléennes, juste des identifiants.

Bien qu'il n'y ait que deux valeurs littérales de type booléen, tous les types de valeurs en JavaScript ont des valeurs équivalentes à ces deux valeurs booléennes. Pour convertir une valeur en sa valeur booléenne correspondante, vous pouvez appeler la fonction de conversion de type Boolean(), par exemple :

var message = 'Hello World';
    var messageAsBoolean = Boolean(message);
Copier après la connexion

Dans cet exemple, le message sous forme de chaîne est converti en une valeur booléenne, qui est stockée dans la variable messageAsBoolean. La fonction Boolean() peut être appelée sur une valeur de n'importe quel type de données et renverra toujours une valeur booléenne. Quant à savoir si la valeur renvoyée est vraie ou fausse, cela dépend du type de données de la valeur à convertir et de sa valeur réelle. Le tableau suivant donne les règles de conversion pour différents types de données et leurs objets.

Ces règles de conversion sont très importantes pour comprendre les instructions de contrôle de flux (telles que les instructions if) et effectuer automatiquement les conversions booléennes correspondantes, par exemple :

var message = 'Hello World';
if(message)//相当于if(Boolean(message)==true) {
        alert("Value is true");//Value is true
}
Copier après la connexion

En raison de l'existence de cette conversion booléenne s'exécute automatiquement, il est donc crucial de savoir exactement quelles variables sont utilisées dans les instructions de contrôle de flux.

4. Nombre : entier et virgule flottante

4.1 Entier : lors des calculs, tous les nombres octaux et hexadécimaux seront convertis en décimaux

4.2 Virgule flottante : La précision la plus élevée des valeurs à virgule flottante est de 17 chiffres, sa précision est donc bien inférieure aux nombres entiers dans les calculs arithmétiques. Par exemple : le résultat de 0,1 0,2 n'est pas 0,3, mais 0,30000000000000004. Par exemple :

a=0.2;
b=0.1;
if(a+b==0.3){
alert("hello");
}
else{
alert("hi");
}
Copier après la connexion

Le résultat apparaîtra « salut », alors ne testez pas une valeur à virgule flottante spécifique.

4.3 NaN : Pas un nombre. Cette valeur est utilisée pour indiquer qu'un opérande qui était censé renvoyer une valeur numérique n'a pas renvoyé de valeur numérique (afin qu'une erreur ne soit pas générée).

NaN lui-même possède deux caractéristiques extraordinaires. Premièrement, toute opération impliquant NaN (telle que NaN/10) renverra NaN, ce qui peut poser des problèmes dans les calculs en plusieurs étapes. Deuxièmement, NaN n’est égal à aucune valeur, y compris NaN lui-même. Par exemple :

alert(NaN == NaN);    //false
Copier après la connexion

Il existe une fonction isNaN() en JavaScript. Cette fonction accepte un paramètre, qui peut être de n'importe quel type, et la fonction nous aidera à déterminer si le paramètre n'est "pas un numérique". valeur". Après que isNaN() ait reçu une valeur, il essaiera de convertir la valeur en valeur numérique. Certaines valeurs qui ne sont pas numériques sont converties directement en valeurs numériques, comme la chaîne « 10 » ou une valeur booléenne. Toute valeur qui ne peut pas être convertie en valeur numérique fera que cette fonction retournera vrai. Par exemple,

alert(isNaN(NaN));    //true
alert(isNaN(10));    //false(10是一个数值)
alert(isNaN("10"));    //false(可能被转换为数值10)
alert(isNaN("blue"));    //true(不能被转换为数值)
alert(isNaN("bule123")); //ture(不能被转换为数值)
alert(isNaN(true));    //false(可能被转换为数值1)
Copier après la connexion

possède trois fonctions qui peuvent convertir des valeurs non numériques en valeurs numériques : Number(), parseInt() et parseFloat(). La première fonction, la fonction de conversion Number(), peut être utilisée pour n'importe quel type de données, tandis que les deux autres fonctions sont spécifiquement utilisées pour convertir des chaînes en nombres. Ces trois fonctions renverront des résultats différents pour la même entrée.

Les règles de conversion de la fonction Number() sont les suivantes :

● S'il s'agit d'une valeur booléenne, true et false seront remplacés par 1 et 0 respectivement

● S'il s'agit d'une valeur numérique, transmettez simplement et retournez

● S'il s'agit d'une valeur nulle, renvoyez 0

● S'il n'est pas défini, renvoyez NaN

● S'il s'agit d'une chaîne, suivez les règles suivantes :

   ○ 如果字符串中只包含数字,则将其转换为十进制数值,即”1“会变成1,”123“会变成123,而”011“会变成11(前导的0被忽略)

   ○ 如果字符串中包含有效的浮点格式,如”1.1“,则将其转换为对应的浮点数(同样,也会忽略前导0)

   ○ 如果字符串中包含有效的十六进制格式,例如”0xf“,则将其转换为相同大小的十进制整数值

   ○ 如果字符串是空的,则将其转换为0

   ○ 如果字符串中包含除了上述格式之外的字符,则将其转换为NaN

● 如果是对象,则调用对象的valueOf()方法,然后依照前面的规则转换返回的值。如果转换的结果是NaN,则调用对象的toString()方法,然后再依次按照前面的规则转换返回的字符串值。

var num1 = Number("Hello World");    //NaN
var num2 = Number("");                //0
var num3 = Number("000011");        //11
var num4 = Number(true);            //1
Copier après la connexion

由于Number()函数在转换字符串时比较复杂而且不够合理,因此在处理整数的时候更常用的是parseInt()函数,而处理浮点数的时候常用parseFloat()函数。

5、String

String类型用于表示由零或多个16位Unicode字符组成的字符序列,即字符串。字符串可以由单引号(')或双引号(")表示。

var str1 = "Hello";
var str2 = 'Hello';
Copier après la connexion

任何字符串的长度都可以通过访问其length属性取得

alert(str1.length);        //输出5
Copier après la connexion

要把一个值转换为一个字符串有两种方式。第一种是使用几乎每个值都有的toString()方法。

var age = 11;
var ageAsString = age.toString();    //字符串"11"
var found = true;
var foundAsString = found.toString();    //字符串"true"
Copier après la connexion

数值、布尔值、对象和字符串值都有toString()方法。但null和undefined值没有这个方法。

多数情况下,调用toString()方法不必传递参数。但是,在调用数值的toString()方法时,可以传递一个参数:输出数值的基数。

var num = 10;
alert(num.toString());      //"10"
alert(num.toString(2));     //"1010"
alert(num.toString(8));     //"12"
alert(num.toString(10));    //"10"
alert(num.toString(16));    //"a"
Copier après la connexion

通过这个例子可以看出,通过指定基数,toString()方法会改变输出的值。而数值10根据基数的不同,可以在输出时被转换为不同的数值格式。

在不知道要转换的值是不是null或undefined的情况下,还可以使用转型函数String(),这个函数能够将任何类型的值转换为字符串。

String()函数遵循下列转换规则:

● 如果值有toString()方法,则调用该方法(没有参数)并返回相应的结果

● 如果值是null,则返回"null"

● 如果值是undefined,则返回”undefined“

6、object

对象其实就是一组数据和功能的集合。对象可以通过执行new操作符后跟要创建的对象类型的名称来创建。而创建Object类型的实例并为其添加属性和(或)方法,就可以创建自定义对象。

var o = new Object();

object类型所具有的任何属性和方法也同样存在于更具体的对象中,Object的每个实例都具有下列属性和方法:

● constructor(构造函数)——保存着用于创建当前对象的函数

● hasOwnProperty(propertyName)——用于检查给定的属性在当前对象实例中(而不是在实例的原型中)是否存在。其中,作为参数的属性名(propertyName)必须以字符串形式指定(例如:o.hasOwnProperty("name"))

● isPrototypeOf(object)——用于检查传入的对象是否是另一个对象的原型

● propertyIsEnumerable(propertyName)——用于检查给定的属性是否能够使用for-in语句来枚举

● toString()——返回对象的字符串表示

● valueOf()——返回对象的字符串、数值或布尔值表示。通常与toString()方法的返回值相同。

三、小测试

typeof(NaN)
typeof(Infinity)
typeof(null)
typeof(undefined)
Copier après la connexion

很多面试都会问到上面几个小问题哒~~

以上就是这6种javascript数据类型的介绍了,小伙伴们是否了解清楚了呢,希望看完本文后大家能有所提高。更多相关教程请访问JavaScript视频教程

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Quel type de données doit être utilisé pour le champ sexe dans la base de données MySQL ? Quel type de données doit être utilisé pour le champ sexe dans la base de données MySQL ? Mar 14, 2024 pm 01:21 PM

Dans une base de données MySQL, les champs de genre peuvent généralement être stockés en utilisant le type ENUM. ENUM est un type d'énumération qui nous permet d'en sélectionner une comme valeur d'un champ parmi un ensemble de valeurs prédéfinies. ENUM est un bon choix pour représenter une option fixe et limitée comme le sexe. Examinons un exemple de code spécifique : supposons que nous ayons une table appelée « utilisateurs » qui contient des informations sur l'utilisateur, y compris son sexe. Maintenant, nous voulons créer un champ pour le genre, nous pouvons concevoir la structure du tableau comme ceci : CRE

Quel est le meilleur type de données pour les champs de genre dans MySQL ? Quel est le meilleur type de données pour les champs de genre dans MySQL ? Mar 15, 2024 am 10:24 AM

Dans MySQL, le type de données le plus approprié pour les champs de genre est le type d'énumération ENUM. Le type d'énumération ENUM est un type de données qui permet de définir un ensemble de valeurs possibles. Le champ genre est adapté à l'utilisation du type ENUM car le genre n'a généralement que deux valeurs, à savoir masculin et féminin. Ensuite, j'utiliserai des exemples de code spécifiques pour montrer comment créer un champ de genre dans MySQL et utiliser le type d'énumération ENUM pour stocker les informations de genre. Voici les étapes : Tout d'abord, créez une table nommée utilisateurs dans MySQL, y compris

Carte mentale de la syntaxe Python : compréhension approfondie de la structure du code Carte mentale de la syntaxe Python : compréhension approfondie de la structure du code Feb 21, 2024 am 09:00 AM

Python est largement utilisé dans un large éventail de domaines grâce à sa syntaxe simple et facile à lire. Il est crucial de maîtriser la structure de base de la syntaxe Python, à la fois pour améliorer l’efficacité de la programmation et pour acquérir une compréhension approfondie du fonctionnement du code. À cette fin, cet article fournit une carte mentale complète détaillant divers aspects de la syntaxe Python. Variables et types de données Les variables sont des conteneurs utilisés pour stocker des données en Python. La carte mentale affiche les types de données Python courants, notamment les entiers, les nombres à virgule flottante, les chaînes, les valeurs booléennes et les listes. Chaque type de données a ses propres caractéristiques et méthodes de fonctionnement. Opérateurs Les opérateurs sont utilisés pour effectuer diverses opérations sur les types de données. La carte mentale couvre les différents types d'opérateurs en Python, tels que les opérateurs arithmétiques, ratio

Tutoriel JavaScript simple : Comment obtenir le code d'état HTTP Tutoriel JavaScript simple : Comment obtenir le code d'état HTTP Jan 05, 2024 pm 06:08 PM

Tutoriel JavaScript : Comment obtenir le code d'état HTTP, des exemples de code spécifiques sont requis Préface : Dans le développement Web, l'interaction des données avec le serveur est souvent impliquée. Lors de la communication avec le serveur, nous devons souvent obtenir le code d'état HTTP renvoyé pour déterminer si l'opération a réussi et effectuer le traitement correspondant en fonction de différents codes d'état. Cet article vous apprendra comment utiliser JavaScript pour obtenir des codes d'état HTTP et fournira quelques exemples de codes pratiques. Utilisation de XMLHttpRequest

Quel est le meilleur choix de type de données pour le champ de genre dans MySQL ? Quel est le meilleur choix de type de données pour le champ de genre dans MySQL ? Mar 14, 2024 pm 01:24 PM

Lors de la conception de tables de base de données, le choix du type de données approprié est très important pour l'optimisation des performances et l'efficacité du stockage des données. Dans la base de données MySQL, il n'existe pas vraiment de meilleur choix pour le type de données pour stocker le champ de genre, car le champ de genre n'a généralement que deux valeurs : masculin ou féminin. Mais pour des raisons d’efficacité et de gain de place, nous pouvons choisir un type de données approprié pour stocker le champ genre. Dans MySQL, le type de données le plus couramment utilisé pour stocker les champs de genre est le type d'énumération. Un type énumération est un type de données qui peut limiter la valeur d'un champ à un ensemble limité.

Explication détaillée de la façon d'utiliser le type booléen dans MySQL Explication détaillée de la façon d'utiliser le type booléen dans MySQL Mar 15, 2024 am 11:45 AM

Explication détaillée de l'utilisation des types booléens dans MySQL MySQL est un système de gestion de bases de données relationnelles couramment utilisé dans les applications pratiques, il est souvent nécessaire d'utiliser des types booléens pour représenter des valeurs logiques vraies et fausses. Il existe deux méthodes de représentation de type booléen dans MySQL : TINYINT(1) et BOOL. Cet article présentera en détail l'utilisation des types booléens dans MySQL, y compris la définition, l'affectation, la requête et la modification des types booléens, et l'expliquera avec des exemples de code spécifiques. 1. Le type booléen est défini dans MySQL et peut être

Python d'entrée à la maîtrise : de zéro base au développement de projet Python d'entrée à la maîtrise : de zéro base au développement de projet Feb 20, 2024 am 11:42 AM

1. Introduction à Python Python est un langage de programmation généraliste, facile à apprendre et puissant. Il a été créé par Guido van Rossum en 1991. La philosophie de conception de Python met l'accent sur la lisibilité du code et fournit aux développeurs de riches bibliothèques et outils pour les aider à créer diverses applications rapidement et efficacement. 2. Syntaxe de base de Python La syntaxe de base de Python est similaire à celle d'autres langages de programmation, notamment les variables, les types de données, les opérateurs, les instructions de flux de contrôle, etc. Les variables sont utilisées pour stocker des données. Les types de données définissent les types de données que les variables peuvent stocker. Les opérateurs sont utilisés pour effectuer diverses opérations sur les données. Les instructions de flux de contrôle sont utilisées pour contrôler le flux d'exécution du programme. 3.Types de données Python en Python

Introduction à la syntaxe de base et aux types de données du langage C Introduction à la syntaxe de base et aux types de données du langage C Mar 18, 2024 pm 04:03 PM

Le langage C est un langage de programmation informatique largement utilisé, efficace, flexible et puissant. Pour maîtriser la programmation en langage C, vous devez d’abord comprendre sa syntaxe de base et ses types de données. Cet article présentera la syntaxe de base et les types de données du langage C et donnera des exemples. 1. Syntaxe de base 1.1 Commentaires En langage C, les commentaires peuvent être utilisés pour expliquer le code afin d'en faciliter la compréhension et la maintenance. Les commentaires peuvent être divisés en commentaires sur une seule ligne et en commentaires sur plusieurs lignes. //Ceci est un commentaire sur une seule ligne/*Ceci est un commentaire sur plusieurs lignes*/1.2 Mot clé Langage C

See all articles