Number()
String()
Boolean()
javascript
使用 Number 函數,能夠將任意類型的值轉化成數值。html
Number(324); // 324 Number("324"); // 324 Number("324abc"); // NaN Number(""); // 0 --Number(true); // 1 Number(false); // 0 --Number(undefined); // NaN Number(null); // 0
Number 方法的參數是對象時,將返回 NaN,除非是包含單個數值的數組。java
Number({ a: 1 }); // NaN Number([1, 2, 3]); // NaN Number([5]); // 5
簡析過程express
var obj = { x: 1 }; Number(obj); // NaN // 等同於 if (typeof obj.valueOf() === "object") { Number(obj.toString()); } else { Number(obj.valueOf()); }
首先調用 obj.valueOf 方法, 結果返回對象自己;因而,繼續調用 obj.toString 方法,這時返回字符串[object Object],對這個字符串使用 Number 函數,獲得 NaN。 默認狀況下,對象的 valueOf 方法返回對象自己,因此通常老是會調用 toString 方法,而 toString 方法返回對象的類型字符串(好比[object Object])json
Number({}); // NaN
String 函數能夠將任意類型的值轉化成字符串數組
String(123); // "123" String("abc"); // "abc" String(true); // "true" String(undefined); // "undefined" String(null); // "null" // 對象 String({ a: 1 }); // "[object Object]" String([1, 2, 3]); // "1,2,3"
簡析過程函數
String({ a: 1 }); // "[object Object]" // 等同於 String({ a: 1 }.toString()); // "[object Object]"
Boolean()函數能夠將任意類型的值轉爲布爾值code
Boolean(undefined); // false Boolean(null); // false Boolean(0); // false Boolean(NaN); // false Boolean(""); // false --Boolean(true); // true Boolean(false); // false --Boolean({}); // true Boolean([]); // true Boolean(new Boolean(false)); // true
自動轉換爲布爾值orm
if (!undefined && !null && !0 && !NaN && !"") { console.log("true"); } // true // 寫法一 expression ? true : false; // 寫法二 !!expression;
自動轉換爲字符串htm
"5" + 1; // '51' "5" + true; // "5true" "5" + false; // "5false" "5" + {}; // "5[object Object]" "5" + []; // "5" "5" + function () {}; // "5function (){}" "5" + undefined; // "5undefined" "5" + null; // "5null"
自動轉換爲數值
"5" - "2"; // 3 "5" * "2"; // 10 true - 1; // 0 false - 1; // -1 "1" - 1; // 0 "5" * []; // 0 false / "5"; // 0 "abc" - 1; // NaN null + 1; // 1 undefined + 1; // NaN
split()
方法功能:將字符串按某個字符切割成若干個字符串,並以數組形式返回
var str = "數組1,數組2,數組3,數組4,數組5"; var arry = str.split(","); console.log(arry); //["數組1", "數組2", "數組3", "數組4", "數組5"]
join()
方法功能:將數組元素用某個字符鏈接成字符串
var arry = ["數組1", "數組2", "數組3", "數組4", "數組5"]; var str = arry.join("-"); console.log(str); //數組1,數組2,數組3,數組4,數組5
var arry = ["數組1", "數組2", "數組3", "數組4", "數組5"]; console.log(Object.assign({}, arry)); //["數組1", "數組2", "數組3", "數組4", "數組5"]
複雜的數組能夠用遍歷的方法
var formArr = [ { name: "數組1", value: "11111", }, { name: "數組2", value: "22222", }, { name: "數組3", value: "33333", }, { name: "數組4", value: "44444", }, ]; var obj = {}; formArr.map(function (e, item) { obj[e.name] = e.value; }); console.log(obj);
對象轉數組
var obj = { one: "11111", two: "22222", three: "33333", four: "44444", }; var arr = []; for (let i in obj) { let o = {}; // console.log(i,obj[i]) o[i] = obj[i]; arr.push(o); } console.log(arr);
// json 對象 { "name":"張三", "age":"18", "address":"張醜醜呀" } // js 對象 var formData={ name:'張三', age:18, address:'張醜醜呀' } ;
JSON.stringify()
JSON.stringify() 方法用於將 JavaScript 值轉換爲 JSON 字符串。
var formData = { name: "張三", age: 18, address: "張醜醜呀", }; console.log(JSON.stringify(formData, ["name", "address", "age"])); // {"name":"張三","address":"張醜醜呀","age":18} console.log(JSON.stringify(formData, null, 4)); // { // "name": "張三", // "age": 18, // "address": "張醜醜呀" // }
JSON.parse()
JSON.parse() 方法用於將一個 JSON 字符串轉換爲對象。
var str = '{"name":"張三","age":"18","address":"張醜醜呀"}'; console.log(JSON.parse(str));
json類型的字符串轉換爲json對象及取值
var jsonString = '{"bar":"property","baz":3}'; var jsObject = JSON.parse(jsonString); //轉換爲json對象 console.log(jsObject.bar); //取json中的值
json對象轉爲json類型的字符串
var jsonString = '{"bar":"property","baz":3}'; var jsObject = JSON.parse(jsonString); //轉換爲json對象 alert(jsObject.bar); //取json中的值 var st = JSON.stringify(jsObject); //轉換爲json類型的字符串
json數組類型字符串取值
var jsonStr = '[{"id":"01","open":false,"pId":"0","name":"A部門"},{"id":"01","open":false,"pId":"0","name":"A部門"},{"id":"011","open":false,"pId":"01","name":"A部門"}]'; var jsonObj = JSON.parse(jsonStr);//轉換爲json對象 for(var i=0;i<jsonObj.length;i++){ alert(jsonObj[i].id); //取json中的值 } console.log(jsonObj) var jsonStr1 = JSON.stringify(jsonObj) console.log(jsonStr1+"jsonStr1")