日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

ReactNative ES6简介 及基本语法第一篇

發布時間:2024/10/12 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ReactNative ES6简介 及基本语法第一篇 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

S6新增了let命令,用來聲明變量。它的用法類似于var,但是所聲明的變量,只在let命令所在的代碼塊內有效。

S6 引入了一種新的原始數據類型Symbol,表示獨一無二的值。它是 JavaScript 語言的第七種數據類型,前六種是:undefinednull、布爾值(Boolean)、字符串(String)、數值(Number)、對象(Object)。


//let和var 區別
//共同點:定義變量

let name = Symbol();
let age = Symbol();
//name是一個Symbol值,作為屬性名
obj[name] = function(){
? ? console.log("jack");
};

Symbol 值通過Symbol函數生成。這就是說,對象的屬性名現在可以有兩種類型,一種是原來就有的字符串,另一種就是新增的 Symbol 類型。凡是屬性名屬于 Symbol 類型,就都是獨一無二的,可以保證不會與其他屬性名產生沖突。


//var變量可以跨代碼塊
//let只在代碼塊內部有效
{
? ? var a = "jason";
? ? let b = 20;
}


console.log(a);
if(typeof(b) == "undefined"){
? ? alert("undefined");
}


//在for循環里
for(let i = 0; i < 5; i++){


}
console.log(i);


//定義順序
console.log(a); //let 引用錯誤
let a = "jason";


//案例
var a = [];
for(let i = 0; i < 5; i++){
? ? a[i] = function(){
? ? ? ? console.log(i);
? ? }
}
a[2]();

上面代碼中,變量ilet聲明的,當前的i只在本輪循環有效,所以每一次循環的i其實都是一個新的變量,所以最后輸出的是6。你可能會問,如果每一輪循環的變量i都是重新聲明的,那它怎么知道上一輪循環的值,從而計算出本輪循環的值?這是因為 JavaScript 引擎內部會記住上一輪循環的值,初始化本輪的變量i時,就在上一輪循環的基礎上進行計算。


//const常量,只能一次賦值
//const PI = 3.14159;
//PI = 3.14;


//對象常量
//對象的屬性可以修改,對象的引用不能修改
//const obj = {name:"jason"};
//obj.name = "jack";


//凍結對象
//防止修改對象的屬性
const obj = Object.freeze({name:"jason"});
obj.name = "jack";
console.log(obj.name);




//old version
var obj = {name:"jack",age:20};
var a = obj.name;
var b = obj.age;


//解構賦值
//數組解構賦值,按照順序
let [a,b] = ["jack",20];
console.log(a);
console.log(b);


//對象解構賦值,亂序
var {name,age} = {name:"jack",age:20};


console.log(name);
console.log(age);


//用途
//1.交換變量的值
let x = 1;
let y = 2;
[x, y] = [y, x];


//2.從函數返回多個值
// 返回一個數組
function func1() {
? ? return [1, 2, 3];
}
let [a, b, c] = func1();


//old version
function func1() {
? ? return [1, 2, 3];
}
var arr = func1();
let a = arr[0];
let b = arr[1];
let c = arr[2];


// 返回一個對象
function func2() {
? ? return {
? ? ? ? foo: 1,
? ? ? ? bar: 2
? ? };
}
let { foo, bar } = func2();


// 參數是一組有次序的值
//數組解構賦值
function func3([x, y, z]) {}
func3([1, 2, 3]);


// 參數是一組無次序的值
//對象解構賦值
function func4({x, y, z}) { }
func4({z: 3, y: 2, x: 1});

總結

以上是生活随笔為你收集整理的ReactNative ES6简介 及基本语法第一篇的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。