Rumah > hujung hadapan web > tutorial js > Ringkasan pembelajaran javascript harian (pengetahuan asas)_kemahiran javascript

Ringkasan pembelajaran javascript harian (pengetahuan asas)_kemahiran javascript

WBOY
Lepaskan: 2016-05-16 15:32:49
asal
1150 orang telah melayarinya

1. Penukaran aksara

 var s1 = "01";
  var s2 = "1.1";
  var s3 = "z";//字母'z'无法转换为数字,所以或返回NaN
  var b = false;
  var f = 1.1;
  var o = { 
   valueOf: function() {
    return -1;
   }
  };
  
  s1 = -s1; //value becomes numeric -1
  s2 = -s2; //value becomes numeric -1.1
  s3 = -s3; //value becomes NaN
  b = -b;  //value becomes numeric 0
  f = -f;  //change to -1.1
  o = -o;  // 1 先执行对象的valueOf()方法返回-1,--1为1
    o = +o;//-1 o的valueOf()值为-1,+-1还是-1
Salin selepas log masuk

2. Operasi aksara khas

 var result1 = 5 - true; //4 because true is converted to 1
  var result2 = NaN - 1;  //NaN NaN不是一个数字,和任何数字做任何运算都是NaN
  var result3 = 5 - 3;  //2
  var result4 = 5 - "";  //5 because "" is converted to 0
  var result5 = 5 - "2";  //3 because "2" is converted to 2
  var result6 = 5 - null; //5 because null is converted to 0
Salin selepas log masuk

3. Pembolehubah kepada operasi rentetan

 var value1 = 10;
  var value2 = true;
  var value3 = null;
  var value4;//value4 没有赋值就是underfined 转换为字符串就是'underfined'
  
  alert(String(value1));  //"10"
  alert(String(value2));  //"true"
  alert(String(value3));  //"null"
  alert(String(value4));  //"undefined"
Salin selepas log masuk

4. Penukaran nombor

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"十六进制
Salin selepas log masuk

5. Operasi perbandingan rentetan

var result1 = 5 > 3; //true
  var result2 = 5 < 3; //false
  var result3 = "Brick" < "alphabet"; //true 字符串比较按照字母表顺序进行比较 小写字母在大写字母后面
  var result4 = "Brick".toLowerCase() < "alphabet".toLowerCase(); //false字母表顺序比较
  var result5 = "23" < "3"; //true 字符2小于字符3
  var result6 = "23" < 3; //false 此时'23'转换成23了
  var result7 = "a" < 3; //false because "a" becomes NaN 字符'a'无法转换成数字
  var result8 = NaN < 3; //false NaN 和任何数字比较,都无法转换成数字,所以一直是false
  var result9 = NaN >= 3; //false
Salin selepas log masuk

6. Penukaran aksara

  var num1 = parseInt("AF", 16);  //175 按照16进制输出十进制数据 10*16+15*1
  var num2 = parseInt("AF");   //NaN 没有指定进制,默认按照10进制转换,由于AF不在十进制范围,返回NaN

  alert(num1);
  alert(num2);

Salin selepas log masuk

7. Penggunaan parseInt

  var num1 = parseInt("1234blue"); //1234
  var num2 = parseInt("");   //NaN 字符''无法转换成数字
   var num3 = parseInt("0xA");   //10 - hexadecimal 16进制的A
  var num4 = parseInt(22.5);   //22
  var num5 = parseInt("70");   //70 - decimal
  var num6 = parseInt("0xf");   //15 16进制为15
Salin selepas log masuk

8. Penggunaan objek Nombor

  var num1 = Number("Hello world!"); //NaN
  var num2 = Number("");    //0 空字符串可以转换成0 这个parseInt()不一样
   var num3 = Number("000011");  //11
  var num4 = Number(true);   //1
Salin selepas log masuk

9. Penggunaan NaN 

  alert(NaN == NaN);  //false
  alert(isNaN(NaN));  //true
  alert(isNaN(10));  //false &#63;10 is a number
  alert(isNaN("10"));  //false &#63;can be converted to number 10
  alert(isNaN("blue")); //true &#63;cannot be converted to a number
  alert(isNaN(true));  //false &#63;can be converted to number 1
Salin selepas log masuk

10 nombor maksimum sistem

var result = Number.MAX_VALUE + 1;
alert(isFinite(result)); // false
Salin selepas log masuk

11. Infiniti

  alert(5 * 6);   //30
  alert(5 * NaN);   //NaN
  alert(Infinity * 0); //NaN
  alert(Infinity * 2); //Infinity
  alert("5" * 5);   //25
  alert(true * 10);  //10
  alert(false * 10);  //0
      alert(26 % 5); //1
      alert(Infinity % 3); //NaN
      alert(3 % 0); //NaN
      alert(5 % Infinity); //5
      alert(0 % 10); //0
      alert(true % 25); //1
      alert(3 % false); //NaN
Salin selepas log masuk

12. untuk dalam gelung

for (var propName in window) {
    document.write(propName);
    document.write("<br />");
  }
Salin selepas log masuk

13. Perbandingan watak istimewa

 alert(null == undefined); //true
  alert(null === undefined); //false
  
  alert("NaN" == NaN);  //false
  alert("NaN" === NaN);  //false
  alert(NaN == NaN);   //false
  alert(NaN === NaN);   //false
  alert(NaN != NaN);   //true
  alert(NaN !== NaN);   //true
  
  alert(false == 0);   //true
  alert(false === 0);   //false
  alert(true == 1);   //true
  alert(true === 1);   //false
  
  alert(null == 0);   //false
  alert(undefined == 0);  //false
  
  alert(5 == "5");   //true
  alert(5 === "5");   //false  
Salin selepas log masuk

14 objek Boolean

 var message = "Hello world!";
  var messageAsBoolean = Boolean(message);
  
  alert(messageAsBoolean); //true
Salin selepas log masuk

15. Gunakan untuk gelung dengan tag
Kedua-dua penyataan putus dan penyataan terus boleh digunakan bersama dengan penyataan berlabel untuk kembali ke lokasi tertentu dalam kod.
Biasanya ini dilakukan apabila terdapat gelung di dalam gelung, contohnya:

 var num = 0;
  //返回到特定的位置
  outermost:
  for (var i=0; i < 10; i++) {
    for (var j=0; j < 10; j++) {
    if (i == 5 && j == 5) {
     break outermost;
    }
    num++;
   }
  }
  
  alert(num); //55
Salin selepas log masuk

Dalam contoh di atas, label paling luar mewakili yang pertama untuk pernyataan. Biasanya, setiap pernyataan untuk melaksanakan blok kod 10 kali, yang bermaksud bahawa num akan dilaksanakan 100 kali dalam keadaan biasa, dan apabila pelaksanaan selesai, num harus sama dengan 100. Pernyataan break di sini mempunyai satu parameter, iaitu label pernyataan untuk melompat ke selepas menghentikan gelung. Dengan cara ini, pernyataan break bukan sahaja boleh melompat keluar dari dalam untuk pernyataan (iaitu, pernyataan yang menggunakan pembolehubah j), tetapi juga melompat keluar dari luar untuk pernyataan (iaitu, pernyataan yang menggunakan pembolehubah i). Oleh itu, nilai akhir num ialah 55, kerana gelung akan ditamatkan apabila nilai i dan j kedua-duanya sama dengan 5.
Pernyataan continue boleh digunakan dengan cara yang sama:

var iNum = 0;

outermost:
for (var i=0; i<10; i++) {
 for (var j=0; j<10; j++) {
 if (i == 5 && j == 5) {
 continue outermost;
 }
 iNum++;
 }
}

alert(iNum); //输出 "95"

Salin selepas log masuk

Dalam contoh di atas, pernyataan continue akan memaksa gelung untuk meneruskan, bukan sahaja gelung dalam, tetapi juga gelung luar. Ini berlaku apabila j sama dengan 5, bermakna gelung dalam akan dikurangkan sebanyak 5 lelaran, menyebabkan iNum mempunyai nilai 95.

Petua: Seperti yang anda lihat, pernyataan berlabel yang digunakan bersama dengan break dan continue adalah sangat berkuasa, tetapi penggunaan berlebihan boleh menyebabkan masalah semasa menyahpepijat kod anda. Pastikan label yang anda gunakan adalah deskriptif dan tidak meletakkan terlalu banyak peringkat gelung.

Di atas adalah ringkasan pembelajaran JavaScript hari ini, dan ia akan terus dikemas kini setiap hari.

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan