js 고급 프로그래밍 노트 1

4854 단어
참조 유형
1. object 유형
var person = new Object();
person.name = "Nicholas";
person.age = 29; ```

var person = {name : "Nicholas",age : 29}; ```
var person = {}; //  new Object()  
person.name = "Nicholas";
person.age = 29; ```

     ,                    。

alert(person["name"]);//"Nicholas"alert(person.name);//"Nicholas"
                       ,  :

var propertyName = "name"; alert(person[propertyName]);//"""Nicholas""`` 속성 이름에 구문 오류가 발생할 수 있는 문자가 포함되어 있거나 속성 이름이 키워드 또는 예약어로 되어 있거나 대괄호 표현을 사용할 수 있습니다."예를 들면 다음과 같습니다.
person["first name"] = "Nicholas";```
  "first name"       ,              。  ,                ,                   。  ,             ,            。 

## 、Array  

//Array 구조 함수를 사용할 때도 new 연산자 var colors = new Array(3)를 생략할 수 있음//3개의 항목을 포함하는 배열 var names = new Array("Greg"),//문자열 "Greg"을 포함하는 배열을 만드는 두 번째 방법:
var colors = ["red", "blue", "green"]; //        3        
var names = []; //         ```

var colors = ["red", "blue", "green"];//3개의 문자열을 포함하는 그룹 colors[99] = "Black";//만들기(위치 99) 색상alert(colors.length) 추가;//100//위치 3에서 98까지는 사실상 존재하지 않기 때문에 방문하면 undefined````
  • 검측수조
  • if (Array.isArray(value)){//         } ```
    2.     
           toString()  valueOf()  。  ,      toString()                                  。    valueOf()       。   ,                   toString()  。        。
    

    var colors = ["red", "blue", "green"];//3개의 문자열을 포함하는 배열alert 만들기 (colors.toString ();//red,blue,green alert(colors.valueOf());//red,blue,green alert(colors);//red,blue,green ```
  • 함수 속성과 방법은 함수마다 두 가지 속성을 포함한다. 그것이 바로length와prototype이다.여기서 length 속성은 함수가 수신하고자 하는 이름 매개 변수의 개수를 나타냅니다.모든 함수는 계승되지 않은 두 가지 방법을 포함한다. 하나는 함수를 실행하는 역할 영역이고, 다른 하나는 매개 변수 그룹이다.여기서 두 번째 매개변수는 Array의 인스턴스일 수도 있고 arguments 객체일 수도 있습니다.예:
  • function sum(num1, num2)
    {return num1 + num2;}
    function callSum1(num1, num2)
    {return sum.apply(this, arguments); //    arguments   }
    function callSum2(num1, num2)
    {return sum.apply(this, [num1, num2]); //     }
    alert(callSum1(10,10)); //20
    alert(callSum2(10,10)); //20 ```
    call()    apply()       ,                 。   call()    ,       this      ,                。    ,   call()   ,                ,        。
    

    function sum(num1, num2){return num1 + num2;} function callSum(num1, num2){return sum.call(this, num1, num2);} alert(callSum(10,10));//20```사실상 전달 매개 변수는 apply()와call()의 진정한 용무가 아니다.그것들의 진정한 강점은 함수를 확장하여 운행하는 작용역을 넓힐 수 있다는 것이다.다음은 하나의 예를 보겠습니다.
    window.color = "red";
    var o = { color: "blue" };
    function sayColor(){alert(this.color);}
    sayColor(); //red
    sayColor.call(this); //red
    sayColor.call(window); //red
    sayColor.call(o); //blue ```
    ECMAScript 5         : bind()。              ,  this          bind()    。  :
    

    window.color = "red"; var o = { color: "blue"}; function sayColor(){alert(this.color);} var objectSayColor = sayColor.bind(o); objectSayColor();//blue ```
  • Boolean 유형
  • var falseObject = new Boolean(false);
    var result = falseObject && true;alert(result); //true
    var falseValue = false;result = falseValue && true;alert(result); //false```
          ,     false        Boolean   。  ,            true         。      , false && true    false。  ,          falseObject        (false)    。     ,                  true,   falseObject               true。  , true && true       true  。 
    5. String  
    concat(),              ,            
     concat()    , slice()、 substr()  substring()            ——                 ,            。       。
    

    var stringValue = "hello world";alert(stringValue.slice(3));//"lo world"alert(stringValue.substring(3));//"lo world"alert(stringValue.substr(3));//"lo world"alert(stringValue.slice(3, 7));//"lo w"alert(stringValue.substring(3,7));//"lo w"alert(stringValue.substr(3, 7));//"lo worl"```
  • Math 대상은 그룹의 최대 또는 최소 값을 찾으려면 아래와 같이 apply () 방법을 사용할 수 있습니다.
  • var values = [1, 2, 3, 4, 5, 6, 7, 8];
    var max = Math.max.apply(Math, values);```
              Math      apply()      ,        this  。
    Math.ceil()      
    Math.floor()      
    Math.round()      
      -  random  
    Math.random()         0    1       。 
      = Math.floor(Math.random() *        +        ) 
    

    function selectFrom(lowerValue, upperValue) { var choices = upperValue - lowerValue + 1; return Math.floor(Math.random() * choices + lowerValue); } var num = selectFrom(2, 10);alert(num);//2와 10 사이의 숫자

    좋은 웹페이지 즐겨찾기